oracle数据库cmd乱码,ORACLE中的sql命令段输入字符的乱码问题

ORACLE中通过sqlplus登录数据库,在SQL终端输入字符就会出现一大堆的乱码,百度找了很多解决办法,最后终于解决了,不知道以后会不会出现什么问题。

f1d9e97e47653ba140385892e28ebc29.png

解决办法:

首先查看当前数据库的字符编码方式:

SELECT parameter, value FROM v$nls_parameters WHERE parameter LIKE '%CHARACTERSET'

6eb43b6b6cfea4761249b67a06fb9561.png

更改步骤:

1、用sysdba角色用户登录sqlplus: 命令行输入:sqlplus sys as sysdba

2、输入口令,进入sqlplus:sql>---

3、依次键入下面的命令行执行:

shutdown immediate;

STARTUP MOUNT;

ALTER SESSION SET SQL_TRACE=TRUE;

ALTER SYSTEM ENABLE RESTRICTED SESSION;

ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;

ALTER SYSTEM SET AQ_TM_PROCESSES=0;

ALTER DATABASE OPEN;

ALTER DATABASE character set INTERNAL_USE ZHS16GBK;

ALTER SESSION SET SQL_TRACE=FALSE;

shutdown immediate;

startup;

风险分析:执行上述命令,有可能造成数据库中已有数据混乱的情况,所以在进行操作前,要进行数据库的备份操作;

结果查看:察看 NLS_LANG 信息:

SELECT parameter, value FROM v$nls_parameters WHERE parameter LIKE '%CHARACTERSET';

NLS_LANG 信息已经变成:

6c3d899c24996e47b778cc053bec424a.png

重新通过sqlplus命令登录测试:

e8cf3fffa889105d9a824ba17196a893.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值