摘要: 通过CMD登录SQLPLUS 的语句C:\Users\Administrator>sqlplus /nologSQL> conn sys/pwd as sysdba;导入导出数据库(来源网络):1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中 ... 阅读全文
posted @ 2014-04-02 23:09 灿烂的鸟 阅读(1088) 评论(0) 推荐(1) 编辑
摘要: 由于项目需要,我在搭建了新的开发环境后,需要将之前环境中的ORACLE数据库导出,再导入到新的开发环境下。当导出导入完成后,使用数据库进行添加操作时发现针对很多表的添加操作报错,具体报错原因描述为:插入的值超出了字段长度。根据分析,导致整个报错提示的原因为之前的数据库字符集格式为:ZHS16GBK而新建的数据库实例编码格式为UTF-8,这就导致中文在UTF-8下占三个字节,而在ZHS16GBK下占两个字节,所以如果你一个字段的长度设置刚好能报错一个中文字,则在UTF-8字符集环境下的数据库中进性插入操作就会报错。具体解决方法:借用了http://blog.csdn.net/avinegar/a 阅读全文
posted @ 2014-04-02 23:01 灿烂的鸟 阅读(1762) 评论(0) 推荐(0) 编辑
摘要: 在使用ORACLE数据库时,当给一个表设置自增字段时,我们经常会使用到序列+触发器来完成。但当你需要对数据库进行导入导出时,序列很容易出问题。当你将数据库导出后,导入到另一个数据时,你会发现另一个数据库里的序列当前值会小于之前数据库的当前值,由此会导致你往该表插入数据时,会出现自增字段的值重复的情况,如果这个自增字段为主键,则你的插入操作就会报错。在网上找了一下资料,发现原来我们对数据库执行导出操作时,数据库先进行的是序列的导出,然后再进行表数据的导出,如果在序列导出的过程中,该系统一直在使用,则序列导出完成后,开始导表数据的时候,有可能表数据因为系统在不断的使用导致表数据增长,里面的序列当前 阅读全文
posted @ 2014-04-02 22:53 灿烂的鸟 阅读(5534) 评论(0) 推荐(0) 编辑