当前位置:  数据库>oracle

PL/SQL 别名时用中文字符报错ora-00911 或中文乱码解决办法

    来源: 互联网  发布时间:2017-05-02

    本文导语: 今天用PL/SQL 9(最新版)的绿色汉化破解版,发现在执行查询: select user_no 户号 from lack_charge  这个语句时在 user_no处报错,错误为 ORA-00911: invalid character (无效的字符)。经过试验所有在别名中只要用中文字符就会报这个错。...

今天用PL/SQL 9(最新版)的绿色汉化破解版,发现在执行查询: select user_no 户号 from lack_charge  这个语句时在 user_no处报错,错误为 ORA-00911: invalid character (无效的字符)。经过试验所有在别名中只要用中文字符就会报这个错。后来在网上查找原因结合实际情况发现:由于是绿色版,所以有些环境变量(或是注册表中的一些值)并没有正确设置造成的,解决办法是新建一个环境变量:

NLS_LANG,值是:AMERICAN.ZHS16GBK。

以下是更详细的说明:

这个可能是Oracle客户端和服务器端的编码方式不一样。
select * from v$nls_parameters t where t.PARAMETER ='NLS_LANGUAGE' or t.PARAMETER ='NLS_CHARACTERSET';

--数据库服务器字符集
select * from nls_database_parameters;

--客户端字符集 表示客户端的字符集的设置,可能是参数文件,环境变量或者是注册表
select * from nls_instance_parameters;

--会话字符集的设置,这个没有特殊设置的话,和nls_instance_parameters一致
select * from nls_session_parameters;

--如果数据库服务器端的编码和客户端字符集编码不一样,则会导致乱码,因此需要更改客户端的编码方式。
--更改客户端的编码方式有两种方式,第一种是更改注册表,这个比较危险,就不在这里提及。第二种是设置环境变量。
--设置系统环境变量,新建一个环境变量:
NLS_LANG,值是:AMERICAN.ZHS16GBK。
--值的构成方式是数据库中查询的服务器端的“NLS_LANGUAGE的值”+“.”+“NLS_CHARACTERSET的值”




    
 
 

您可能感兴趣的文章:

  • linux (中文)查询sql 中文
  • 请教关于unixODBC访问sql Server的中文问题
  • 从MY_SQL取数据,中文分割的问题
  • sql语句中文问题
  • 中文插入SQL数据库中变成了乱码?
  • Orcale 数据库客户端PL/SQL 中文乱码的问题解决方法
  • 如何解决JDBC-ODBC连接SQL Server取中文值为乱码?
  • Oracle 中文字段进行排序的sql语句
  • sql语句中包含中文字符不能运行...
  • 求救,sql语句的中文问题
  • jsp中向英文版的sql中写中文数据,出来是乱码,有解决方法吗?
  • http://www.ddtong.com/Sql.pl?nId=871609&csId=340387&cName=%bd%af%d3%ee%d6%c7,name如何转化成中文(直接java代码)
  • mysql命令行还原phpMyAdmin导出的含有中文的SQL文件
  • 给分:JSP取SQL 2000中文数据,显示出来就却是乱码
  • 阿拉伯数字转大写中文_财务常用sql存储过程
  • Mysql中文乱码以及导出为sql语句和Excel问题解决方法[图文]
  • 我刚学jsp没两天,写了两个jsp程序往sql server2000的数据库里添加中文数据,怎么是乱码啊,(英文好使),100分奉上!!
  • 论坛 iis7站长之家
  • 用Shell执行SQL得到的结果是乱码.
  • 解析MYSQL 数据库导入SQL 文件出现乱码的问题
  • python连接sql server乱码的解决方法
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • T-SQL实例 函数结果设置为列别名
  • T-SQL实例 列别名的用法举例
  • T-SQL实例 使用As添加列别名
  • 关于sql和mysql对于别名不能调用的一些理解
  • java命名空间java.sql接口statement的类成员方法: executeupdate定义及介绍
  • 请问,这是什么错误!java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][Named Pipes]??????? SQL Server?虽然分少,但一定给,只要您是前5名回复者中最好的以为!
  • java命名空间java.sql接口connection的类成员方法: nativesql定义及介绍
  • SQL查询分析工具 SQL Workbench/J
  • java命名空间java.sql接口preparedstatement的类成员方法: executeupdate定义及介绍
  • oracle导出sql语句的结果集和保存执行的sql语句(深入分析)
  • java命名空间java.sql接口rowid的类成员方法: getbytes定义及介绍
  • SQL Server统计SQL语句执行时间的脚本
  • java命名空间java.sql接口ref的类成员方法: getbasetypename定义及介绍
  • SQL客户端软件 PKLite SQL Client
  • java命名空间java.sql接口databasemetadata的类成员方法: getsqlkeywords定义及介绍
  • SQL语句实现SQL Server 2000及Sql Server 2005日志收缩(批量)
  • java命名空间java.sql接口rowid的类成员方法: tostring定义及介绍
  • SQL客户端管理工具 SQuirreL SQL Client
  • java命名空间javax.sql.rowset接口joinrowset的类成员方法: getwhereclause定义及介绍
  • 如何处理此错误:java.sql.SQLException: [Microsoft][ODBC SQL Server Driver]没有执行可选特性
  • java命名空间java.sql接口statement的类成员方法: execute定义及介绍
  • sql2005 大数据量检索分页的sql代码
  • java命名空间java.sql接口resultset的类成员方法: getcursorname定义及介绍
  • 如何实现连接一次数据库,提交多个sql语句。(sql的批处理)
  • java命名空间java.sql接口resultsetmetadata的类成员方法: getcolumntype定义及介绍
  • 微软网站下载的Ms SQL Server2000 JDBC Driver,必须用英文版的SQL server2000吗?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,