Oracle 10g字符编码

pl/sql developer查询数据时出现乱码,主要检查如下:

1、检查服务器编码

sql 复制代码
 select * from v$nls_parameters;
sql 复制代码
 select * from nls_database_parameters;
sql 复制代码
select userenv('language') from dual;  

2、查看数据库可用字符集参数设置

sql 复制代码
 select * from v$nls_valid_values; 

参照/home/oracle/.bash_profile 相关语言设置 系统环境变量加入

java 复制代码
LANG=zh_CN.GBK  
NLS_LANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK

3、重新连接sqlplus,查看数据

显示正常

4、pl/sql developer设置并重新连接

在pl/sql developer的菜单->tools->preferences->user interface->fonts 中修改为中文字体,重新连接,显示正常。

5、修改数据库的字符编码

如果你要更改数据库的字符编码,会比较麻烦, 强烈建议先备份(危险操作),这是一个好习惯哦~,先sql命令进入dba模式

sql 复制代码
sql> conn user/password as sysdba;
sql> shutdown immediate;
  database closed.
  database dismounted.
  oracle instance shut down.
sql> startup mount;
  oracle instance started.
  total system global area 135337420 bytes
  fixed size 452044 bytes
  variable size 109051904 bytes
  database buffers 25165824 bytes
  redo buffers 667648 bytes
  database mounted.
sql> alter system enable restricted session;
  system altered.
sql> alter system set job_queue_processes=0;
  system altered.
sql> alter system set aq_tm_processes=0;
  system altered.
sql> alter database open;
  database altered.
sql> alter database character set internal_use ZHS16GBK;
   (可以设置: UTF8\AL32UTF8\ZHS16GBK ),注意跟上面的统一,全部统一UTF-8也是可以的
sql> shutdown immediate;
sql> startup;
相关推荐
昵称画1 小时前
交接班记录电子化:三班之间的信息不漏
开发语言·数据库·人工智能·低代码·php
缓慢更新2 小时前
审批的加签与会签:多人意见怎么合
android·java·数据库·低代码·rxjava
跨境联盟3 小时前
大健康实体如何搭建产品差异化:对比普通营养品与合规跨境膳食补充剂服务模式
数据库·ai·健康医疗·健康管理·精准营养
有想法的py工程师3 小时前
PostgreSQL EXPLAIN中的Cost模型分析(random_page_cost参数):优化器眼中的代价世界与执行计划生成
数据库·postgresql
前进的李工3 小时前
飞书企业知识库设计+后端高频八股
数据库·redis·后端·mysql·性能优化·飞书·rag
泡海椒4 小时前
JQuick-SQL CSV 文件数据接入:转换为内存表后再查询
数据库·sql
为思念酝酿的痛5 小时前
MySQL数据类型
数据库·mysql
泡海椒6 小时前
JQuick-SQL 与关系型数据库集成:应用层读取后注册查询
数据库·sql
Carol06306 小时前
上肢及肩肘关节
java·服务器·数据库
鸽芷咕6 小时前
数据孤岛怎么拆?金仓KFS数据集成软件从原理到落地
数据库