oracle IE EXCEL
发布网友
发布时间:2022-05-17 09:12
我来回答
共4个回答
热心网友
时间:2023-10-16 20:35
估计是字符集的问题。
字符集分为数据库核心字符集和客户端所使用的字符集.
以下是以前写的读书笔记关于字符集的一些理解,可能对你有所帮助.
显示与字符集有关的参数的三种方法:
SVRMGR>show parameter nls
SQL>select * from nls_database_parameters;
SQL>select * from V$NLS_PARAMETER;
数据库核心字符集:Oracle 8以后支持两种中文字符集ZHS16CGB231280、ZHS16GBK,默认用ZHS16GBK,Oracle7.3仅支持ZHS16CGB231280中文字符集。
(Oracle 7.3以前使用字符集US7ASCII)
这两种字符集兼容,两台这样的服务器互访时,Oracle可以自动进行转换
Oracle安装时默认使用与操作系统语言一致的字符集,如要安装不同的字符集,可以事先设定NLS_LANG参数,或自定义安装。
修改字符集:
SVRMGR>update props$ set value$=’ZHS16GBK’
where name=’NLS_CHARACTERSET’;
客户端使用的字符集由参数NLS_LANG决定
NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK
Unix中可以直接在操作系统中设置,或者写入profile文件中
Windows中编辑注册表,HKEY_LOCAL_MACHINE|SOFTWARE|ORACLE|HOME0
将NLS_LANG的值设置为空,默认会使用英文(字符集US7ASCII)
修改后明显的变化是登录SQL-PLUS时,窗口是英文的。
日期格式属于字符集设置,两个参数:NLS_CALENDAR及NLS_DATE_FORMAT
当服务器数据库使用US7ASCII字符集存储中文信息时,客户端查询不显示乱码,需要修改注册表NLS_LANG为American_America.US7ASCII(或者值设为空)
如要将早期使用US7ASCII字符集的数据库导出到新的数据库上使用,新数据库需要使用相同的字符集,客户端也需要保持相同字符集,否则会显示乱码。
热心网友
时间:2023-10-16 20:36
你先走的字符集有可能是US,不是ZHSGBK
1、ORACLE对EXCEL没要求,EXCEL对字符集有要求
2、自动选择后可以正常显示,不过首次可能会错
3、更改ORACLE字符集
热心网友
时间:2023-10-16 20:36
似乎没法在EXCEL里修改编码,不过你可以试下下面的方法:
发送这个表单,就会自动将字符串发送为gb2312编码
热心网友
时间:2023-10-16 20:37
不是oracle的问题,是你的程序编码没有用过滤器,程序提取数据,传送数据的过程中要用过滤器来统一编码。不会写可以找我,lcc060414@126.com