近日有同事在外面部署系統時,安裝數據庫時可能選擇了UTF-8編碼格式,導入insert語句時,一個漢字被認為三個字節,這是不行的。
結合上網搜到的資料,將oracle數據庫的編碼格式,從utf-8改為GBK后,一切正常了。
附:PLSQL執行記錄:
---------------------------
Microsoft Windows [版本 6.0.6002]
版權所有 (C) 2006 Microsoft Corporation。保留所有權利。
C:\Users\Administrator>sqlplus /nolog
SQL*Plus: Release 11.2.0.1.0 Production on 星期一 9月 3 11:39:04 2012
Copyright (c) 1982, 2010, Oracle. All rights reserved.
SQL> conn / as sysdba
已連接。
SQL> SHUTDOWN IMMEDIATE
數據庫已經關閉。
已經卸載數據庫。
ORACLE 例程已經關閉。
SQL> startup mount;
ORACLE 例程已經啟動。
Total System Global Area 778387456 bytes
Fixed Size 1374808 bytes
Variable Size 377488808 bytes
Database Buffers 394264576 bytes
Redo Buffers 5259264 bytes
數據庫裝載完畢。
SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
系統已更改。
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
系統已更改。
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
系統已更改。
SQL> ALTER DATABASE OPEN;
數據庫已更改。
SQL> alter database character set internal_use zhs16gbk;
數據庫已更改。
SQL> shutdown immediate;
數據庫已經關閉。
已經卸載數據庫。
ORACLE 例程已經關閉。
SQL> startup
ORACLE 例程已經啟動。
Total System Global Area 778387456 bytes
Fixed Size 1374808 bytes
Variable Size 377488808 bytes
Database Buffers 394264576 bytes
Redo Buffers 5259264 bytes
數據庫裝載完畢。
數據庫已經打開。
SQL>
---------------------------
查看編碼格式:
select userenv('language') from dual;
select * from nls_database_parameters