今天使用 sqlplus 測試 insert資料時 ,出現了 ORA-01756: quoted string not properly terminated 錯誤
insert into test (name) values ('大家好');
什麼...... 左看右看我的括號也沒少怎麼會出錯呢,那把中文改成英文, sql 是可以執行沒問題的
看來是中文字的問題,原來是 Client 端 與 db 端 語系不同,我們來設一下Client 端 語系
1.查詢一下DB 端的語系設定
code
|
SQL> select userenv('language') from dual; USERENV('LANGUAGE') ---------------------------------------------------- AMERICAN_AMERICA.UTF8 2.再來設定 Client 端語系 >export NLS_LANG=AMERICAN_AMERICA.UTF8 |
後來某天執行.sql 檔案時出現了
SP2-0734: unknown command beginning "嚜窺et SER..." - rest of line ignored.
從錯誤的訊息來看,好像不是SQL本身的問題
這時突然想到 .sql 檔編碼的問題
改成 UTF-8 編碼 檔首無BOM儲存,就可以成功執行囉。
沒有留言:
張貼留言