當前位置:首頁 » 編程語言 » sql字元集不匹配oracle
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql字元集不匹配oracle

發布時間: 2022-06-18 06:54:11

❶ 如何解決PL/sql導出Oracle的數據為亂碼的問題

先問一下:你屏幕上出現的結果顯示的是亂碼嗎?
一般來說,你這情況是因為資料庫伺服器和客戶端字元集不匹配,執行sqlplus的機器就是客戶端,伺服器和客戶端也可能是一台機器,執行sqlplus之前要先設置客戶端的字元集,在linux上:export NLS_LANG=.......
在windows上set NLS_LANG
查詢資料庫字元集:select property_value from database_properties where property_name like 'NLS_CHAR%';
比如查詢結果是:ZHS16GBK
那你在sqlplus之前要設置:export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK
然後再登錄sqlplus用spool生成數據

❷ plsql提示和Oracle字元集不一致,注冊表修改後,進入cmd下資料庫漢字會亂碼。 求大神幫助 困擾好幾天了

是不是client有問題?,重新安裝,選擇最大的那個類型。
oracle11g中應該是700多M那個

❸ 視圖遷移到oracle之後,出現字元集不匹配問題!

那就把視圖重新編譯下唄,看看出什麼錯啊!
sqlserver遷移到ORACLE最好用oracle官方的工具sqldeveloper,不過就算是sqldeveloper也不可能百分百的轉換OK,好多東西還是要手動去修正下!

❹ oracle資料庫(PLSQL)導入.sql文件出錯:無效的字元集

file--new--command
window,打開後執行:@目錄:\wj.sql;
然後回車。例如文件在e盤,就是
@e:\wj.sql;

❺ 在ORACLE查詢出來的結果凡是中文的都是亂碼 ,用pl/sql亦如此,該如何解決呢

數據是怎麼來的是導入還是客戶端錄入的
如果是導入的那就是你導入數據的字元集和導入的oracle的字元集不一致,那就修改資料庫的字元集重新導入數據
如果是客戶端錄入的那就是客戶端的字元集和oracle的不一致 有兩個辦法一是修改客戶端的代碼使客戶端的字元集和oracle一致,二是修改資料庫的字元集重新錄入數據

❻ ORACLE sql 語句插入時間 總是提示 文字與格式字元串不匹配

第一個日期,怎麼能用to_char呢?
INSERT INTO zo_proct VALUES(SEQ_ZO_PRODUCT.NEXTVAL,'圖書','民國藏書',999,998, trunc(sysdate), to_date( '2013-1-1 00:00:00 ', 'YYYY-MM-DD HH24:MI:SS '),1);

❼ 失敗原因:執行SQL失敗,失敗原因:批處理中出現錯誤: ORA-00911: invalid character

  1. 應該是錯誤輸入了全形字元,輸入半形字元就行了。

  2. 錯誤信息ORA-00911: invalid character說明了在執行的SQL語句中出現了無效字元,所在SQL語句無法通過語法分析過程導致了錯誤結果。

  3. 可能出現的原因有:錯誤地輸入了全形字元,比如輸入了全形逗號。

  4. 如果使用C++、Java、C#等編程時,總會習慣在語句最後加分號,而這個符號在SQL中是無效字元。

  5. 實際語句和列類型不匹配,比如將數值列賦值為字元串。

  6. 與display函數不同,display_cursor顯示的為真實的執行計劃。

  7. 對於format參數,使用與display函數的各個值,同樣適用於display_cursor函數。

  8. 當statistics_level為all或使用gather_plan_statistics提示可以獲得執行時的統計信息。

  9. 根據真實與預估的統計信息可以初步判斷SQL效率低下的原因,如統計信息的准確性、主要的開銷位於那些步驟等。

  10. 看你的sql語句最後是否有分號,有的話去掉就行 看你Oracle伺服器端字元集是否和Oracle客戶端字元集匹配。

  11. 查詢oracle server端的字元集:SQL>select userenv(『language』) from al。

  12. 查詢oracle client端的字元集。在windows平台下,就是注冊表裡面相應OracleHome的NLS_LANG。

  13. 還可以在dos窗口裡面自己設置,比如: set nls_lang=AMERICAN_AMERICA.ZHS16GBK。

❽ oracle這個sql怎麼不對,報「文字格式與字元串不匹配」

一般出現此類問題是將日期型的欄位中插入了字元型的數據,導致資料庫不可識別而報錯。

如:有如下test表

123createtabletest(idint,begin_datedate);

現在執行插入語句:

1insertintotestvalues(1,'2015-01-01');

則會報錯:

如果正確插入,則要將字元型數據轉成日期型數據:

1insertintotestvalues(1,to_date('2015-01-01','yyyy-mm-dd'));

❾ 查詢 SQL語句的時候 出現oracle ora 01861 文字與字元串格式不匹配 百思不得其解!

你自己寫錯了,
TO_CHAR(IM.INFO_MAGA_CREATE_TIME, 'YYYY-MM-DD') AS T_INFO_MAGA_CREATE_TIME,

TO_DATE('2013-02-01', 'YYYY-MM-DD')

他們怎麼恩那個對比呢?一個CHAR.一個DATE
要不你轉換上面的TO_CHAR為TO_DATE
要不你轉換下面的TO_DATE為 TO_CHAR

你的SQL 真。。。。亂