zoukankan      html  css  js  c++  java
  • [DB] 查看与更新 Oracle Server 编码和字符集

    查看字符集

    Oracle Server
    SQL> select * from nls_database_parameters where parameter ='NLS_CHARACTERSET';

    Oracle Client
    SQL> select * from nls_instance_parameters where parameter='NLS_LANGUAGE';

    修改字符集

    假如当前数据库环境的字符集是AL32UTF8,尝试把它改成WE8MSWIN1252。

    1. 以sysdba的身份登录 SQL Plus

    2.关闭数据库
    SQL> Shutdown immediate;

    3.以 mount 方式启动数据库
    SQL> Startup mount;

    4.设置session
    SQL> ALTER SYSTEM ENABLE RESTRICTED SESSION;
    SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
    SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;

    5.启动数据库
    SQL> Alter database open;

    6.修改字符集
    SQL> ALTER DATABASE CHARACTER SET WE8MSWIN1252;
    这会可能会报错,提示我们的字符集:新字符集必须为旧字符集的超集,这时我们可以跳过超集的检查做更改:
    SQL> ALTER DATABASE character set INTERNAL_USE WE8MSWIN1252;
    这条语句就可以了,TERNAL_USE 提供的帮助就会使oracle绕过了子集与超集的验证,这条语句和上面的语句内部操作时完全相同的。

    7.关闭,重新启动
    SQL> Shutdown immediate;
    SQL> Startup;

    字符集最好不要轻易修改,因为这会对数据库的数据有直接的影响,如果是生产环境,可能造成不可估计的损失。

    参考资料

    https://www.cnblogs.com/wujin/archive/2012/01/19/2326173.html

  • 相关阅读:
    vbr mp3
    NDK setup error
    转载 MPEG2视频解码在ARM11上的优化
    arm程序设计优化
    小情歌
    android update project
    Linux环境下的DNW使用
    2010的计划
    Setting up UDEV rules to grant access to your phone
    Debugging Native Code for android
  • 原文地址:https://www.cnblogs.com/jinzesudawei/p/15688290.html
Copyright © 2011-2022 走看看