oracle中文乱码,插入中文是问号.... 怎么解决啊 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1、检查服务器上Oracle数据库的字符集 sqlplus /nolog SQL> connect / as sysdba 连接成功. SQL> desc props$ 列名 可空值否 类型 ------------------------------- -------- ---- NAME NOT NULL VARCHAR2(30) VALUE$ VARCHAR2(2000) COMMENT$ VARCHAR2(2000) SQL> col value$ format a40 SQL> select name,value$ from props$; NAME VALUE$ ------------------------------ ------------------------- DICT.BASE 2 NLS_LANGUAGE AMERICAN NLS_TERRITORY AMERICA NLS_CURRENCY $ NLS_ISO_CURRENCY AMERICA NLS_NUMERIC_CHARACTERS ., NLS_DATE_FORMAT DD-MON-YY NLS_DATE_LANGUAGE AMERICAN NLS_CHARACTERSET ZHS16GBK NLS_SORT BINARY NLS_CALENDAR GREGORIAN NLS_RDBMS_VERSION 7.3.4.0.0 GLOBAL_DB_NAME ORACLE.WORLD EXPORT_VIEWS_VERSION 3 NLS_CHARACTERSET和NLS_CHAR_CTERSET这个参数应该是ZHS16GBK,如不是,改为它。 SQL*Plus中修改方法: SQL> update props$ set value$='新字符集' where name='NLS_CHARACTERSET'; 看一下字符集是什么alter session set nls_language=''; 用DEVELOP 然后REF 然后 设置 FONT 1、登陆 sqlplus /nolog SQL> connect / as sysdba 2.查看字符集 SQL>show paramter NLS_CHARACTERSET; 3.查看NLS_CHARACTERSET是否为ZHS16GBK,若不是更改 SQL>alter database set NLS_CHARACTERSET=ZHS16GBK; alter database set NLS_CHARACTERSET=ZHS16GBK; 注意就是语言集设置有问题。另外你是不是做系统,有可能是系统页面上的语言设置也有问题,都改为中文。 现有表或者数据库的字符集不是中文的话,那楼主可要小心改ZHS16GBK哦。。可能要先导出表/数据库到dump文件,再重建,重建后字符集改成ZHS16GBK,原来的dump导入时要用ZHS16GBK的字符集方式导入(可能要修改DUMP文件头或者导入参数,具体我忘了) 服务器 客户端操作系统 客户端注册表NLS_LANG值保持一致,就不会出错 oracle的字符集可以在server端和client端分别设置,server端的设置一般在安装时指定,如果库上已经存储了数据,修改字符集是一件非常危险的事情,建议不要进行。所以建议您更改客户端的字符集,也就是修改nls_language参数,使之与server端一致,这样就可以保证中文能正常插入显示了。 怎么把图片,视频存储在数据库中? 求距某一日最近的一条记录 关于函数的运用 高分请教下 ORACLE 建库时 参数设置多少比较优化,有个建议 求PL/SQL帮助文档 请教sql的问题. 本人初次接触orcle,问一个很弱的问题:如何在vc6下通过OO4O访问orcle ? 新建数据库出现:TNS包写入程序失败!急! 安装问题 如何取得快照执行失败的出错信息? oracle 升级后数据库不能启动 不同平台下,oracle导出导入的 表空间的问题!
sqlplus /nolog
SQL> connect / as sysdba
连接成功.
SQL> desc props$
列名 可空值否 类型
------------------------------- -------- ----
NAME NOT NULL VARCHAR2(30)
VALUE$ VARCHAR2(2000)
COMMENT$ VARCHAR2(2000)
SQL> col value$ format a40
SQL> select name,value$ from props$;
NAME VALUE$
------------------------------ -------------------------
DICT.BASE 2
NLS_LANGUAGE AMERICAN
NLS_TERRITORY AMERICA
NLS_CURRENCY $
NLS_ISO_CURRENCY AMERICA
NLS_NUMERIC_CHARACTERS .,
NLS_DATE_FORMAT DD-MON-YY
NLS_DATE_LANGUAGE AMERICAN
NLS_CHARACTERSET ZHS16GBK
NLS_SORT BINARY
NLS_CALENDAR GREGORIAN
NLS_RDBMS_VERSION 7.3.4.0.0
GLOBAL_DB_NAME ORACLE.WORLD
EXPORT_VIEWS_VERSION 3
NLS_CHARACTERSET和NLS_CHAR_CTERSET这个参数应该是ZHS16GBK,如不是,改为它。
SQL*Plus中修改方法:
SQL> update props$ set value$='新字符集' where name='NLS_CHARACTERSET';
alter session set nls_language='';
sqlplus /nolog
SQL> connect / as sysdba
2.查看字符集
SQL>show paramter NLS_CHARACTERSET;
3.查看NLS_CHARACTERSET是否为ZHS16GBK,若不是更改
SQL>alter database set NLS_CHARACTERSET=ZHS16GBK;
注意就是语言集设置有问题。
另外你是不是做系统,有可能是系统页面上的语言设置也有问题,都改为中文。