ORACLE数据导入导出后新数据库中某些表添加操作报错[ORA-12899]
由于项目需要,我在搭建了新的开发环境后,需要将之前环境中的ORACLE数据库导出,再导入到新的开发环境下。当导出导入完成后,使用数据库进行添加操作时
发现针对很多表的添加操作报错,具体报错原因描述为:插入的值超出了字段长度。根据分析,导致整个报错提示的原因为之前的数据库字符集格式为:ZHS16GBK
而新建的数据库实例编码格式为UTF-8,这就导致中文在UTF-8下占三个字节,而在ZHS16GBK下占两个字节,所以如果你一个字段的长度设置刚好能报错一个中文字,
则在UTF-8字符集环境下的数据库中进性插入操作就会报错。具体解决方法:
借用了
http://blog.csdn.net/avinegar/article/details/8077967
这个作者的方法:
需要以SYS或者SYSTEM用户登录,否则操作权限不够。
SQL>STARTUP MOUNT
SQL>ALTER SYSTEM
ENABLE RESTRICTED SESSION;
SQL>ALTER SYSTEM SET
JOB_QUEUE_PROCESSES=0;
SQL>ALTER SYSTEM SET
AQ_TM_PROCESSES=0;
SQL>ALTER DATABASE OPEN;
SQL> ALTER DATABASE CHARACTER SET ZHS16GBK
;
ALTER DATABASE CHARACTER SET ZHS16GBK
*ERROR at line 1:
ORA-12712:
new character set must be a superset of old character set
报字符集不兼容,此时下INTERNAL_USE指令不对字符集超集进行检查:
SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE
ZHS16GBK;
SQL>SHUTDOWN IMMEDIATE
SQL>STARTUP
最新文章
- JAVA 中文转GBK内码方法
- iOS 推送通知处理
- Python快速教程 尾声(转)
- HDOJ-三部曲一(搜索、数学)-1008-Prime Path
- JAVA与.NET的相互调用——利用JNBridge桥接模式实现远程通讯
- Eclipse插件管理
- magent编译安装及常见错误
- 《Python自然语言处理》第二章 学习笔记
- [转载] 基于Redis实现分布式消息队列
- 设计模式(Design Patterns)的简单讲解
- 我是如何拿到蚂蚁金服 offer 的 ?
- JQuery中的$.getScript()、$.getJson()和$.ajax()方法
- VBA 对比两行数据
- Linux(ubuntu18.04)切换python版本
- 【算法笔记】B1017 A除以B
- PHP 统计数据功能 有感
- Win7系统中哪些服务可以关闭?
- 第三章 T-SQL 编程
- CentOS6下安装PHP7
- web.xml中监听器如何顺序加载
热门文章
- JavaScript In OA Framework
- 使用路径arc-奥运五环
- MySQL解析过程、执行过程
- 对比springmvc与struts2
- C语言strrev()函数:字符串逆置(倒序、逆序)
- 安装Win8后必做的优化
- ACCESS修改密码,更新显示
- JavaScript权威指南——词法结构(4)
- dependencies与dependencyManagement的区(转自:http://blog.csdn.net/liutengteng130/article/details/46991829)
- [python]自问自答:python -m参数? ( python3.7 版本 )