问题:
打开 plsql,执行 sql 语句,中文显示乱码:
解决方案:
1)输入 sql 语句 select userenv('language') from dual 查看数据库字符集
输出结果: SIMPLIFIED CHINESE_CHINA.AL32UTF8
2)输入 sql 语句 select * from V$NLS_PARAMETERS 查看本地字符集,查看第一行和第九行是否对应
NLS_LANGUAGE SIMPLIFIED CHINESE
NLS_CHARACTERSET AL32UTF8
3)查看下环境变量的设置,查看是否有变量 NLS_LANG,没有则新建该变量
4)新建变量,设置变量名:NLS_LANG,变量值:SIMPLIFIED CHINESE_CHINA.AL32UTF8(这里的变量值需要与数据库环境相同所以不固定:比如还会有 utf-8 等),确定即可
5)重新打开 plsql,执行 sql 语句,问题解决
问题:
打开 plsql,执行 sql 语句,日期类型数据显示乱码:
在环境变量中新增:
变量名 : NLS_TIMESTAMP_FORMAT NLS_TIMESTAMP_FORMAT
变量值 : YYYY-MM-DD HH24:MI:SS:FF6