Oracle 中文乱码或者使用sqlplus 执行sql时出现quoted string not properly terminated等处理方式。

网上有很多乱码处理方式,但是说的很不详细也没有解释,遇到一些问题是修修改改解决不了的。

首先乱码会和连接终端,oracle服务端,服务器环境变量编码设置有关

1.首先环境变量必须要配置在用户变量下:~/.bash_profile 

2.使用select userenv('language') from dual;查看oracle编码

   例如我这里是:AMERICAN_AMERICA.ZHS16GBK

3.vim ~/.bash_profile 配置环境变量 export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK,

   再source ~/.bash_profile生效

4.当确认了编码是GBK后,修改连接终端的编码,例如xshell 改为GBK

5.打开sqlplus 执行ddl或者dml语句,最好是ddl的字段注释语句,看看是否出现quoted string not properly terminated

   例如:comment on column user.user_no is '用户号';

6.没有出现则成功,然后用sqlplus 执行 sql脚本文件,查看是否成功。sql脚本文件编码必须也是GBK,

  一切以Oracle服务端的编码为准

7.当第六步出现问题时,检查前5部是否正确,或者在将LANG编码也改为GBK试试。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Qensq

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值