十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
今天在使用plsql查询数据时查询一条sql语句,执行后什么结果都没有,起先还以为是sql语句写错了,因为先前会知道要查的表不可能没有数据的,于是自己又去服务器上用sqlplus查了一下,语法是正常的,一直不知道什么原因,后面找了一下发现是在plsql中Oracle的客户端字符集和服务器上的不一样,造成的中文无法匹配,先去服务器上查一下Oracle使用的字符集
成都创新互联主营崇信网站建设的网络公司,主营网站建设方案,app软件开发,崇信h5小程序定制开发搭建,崇信网站营销推广欢迎崇信等地区企业咨询
SQL> select * from v$nls_parameters where parameter like 'NLS_CH%'; PARAMETER ---------------------------------------------------------------- VALUE ---------------------------------------------------------------- NLS_CHARACTERSET AL32UTF8
很明显服务器上使用的字符集是AL32UTF8,自己个人电脑是使用Windows系统,这样DOS系统的默认字符集和Unix系统的默认字符集不一样,这样只能去电脑中改下Oracle的环境变量,还有最好要匹配服务端的字符语言也是NLS开头的变量,在这里就不做过多的赘述了,修改也很简单打开我的电脑里属性中的高级系统配置下的环境变量修改下
这样变量赋值保存后再重新打开plsql查询包含中文的sql语句就正常了