我的库是oracle 10g的 NLS_CHARACTERSET为WE8ISO8859P1 我想在这个库里建一个 编码为utf-8的表,可以实现么?
解决方案 »
- oracle创建函数出错,提示编译出错,请大侠指教,不甚感激~~
- 大表备份
- 求助,这个语句怎么改
- PL/SQL Developer 中Commit时的提示关掉了怎么开
- 再论SQL 谢谢
- 各位仁兄, a raw device 表示什么意思( 某些设置路径的参数不能设置为 a raw device )
- oracle 中 net assistant无法启动什么原因
- 各位兄弟姐妹有oracle的文档吗,传我一份,谢谢了
- 怎样消去Oracle导出时的空行——在线求答 急!!!
- 请教这句SQL,好象难度挺大的
- ODI中将mysql表course(cno,cname)集成到oracle
- 急!用oracle em创建备份后出现这种问题。
utf-8是WE8ISO8859P1 的超级,可以将字符集从WE8ISO8859P1 转换成 utf-81. 关闭数据库
SQL>SHUTDOWN IMMEDIATE2. 启动到Mount
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 UTF8;
SQL>ALTER DATABASE national CHARACTER SET UTF8;
SQL>SHUTDOWN IMMEDIATE;
SQL>STARTUP注意:如果没有大对象,在使用过程中进行语言转换没有什么影响,(切记设定的字符集必须是ORACLE支持,不然不能start) 按上面的做法就可以。若出现‘ORA-12717: Cannot ALTER DATABASE NATIONAL CHARACTER SET when NCLOB data exists’ 这样的提示信息,要解决这个问题有两种方法
1. 利用INTERNAL_USE 关键字修改区域设置,
2. 利用re-create,但是re-create有点复杂,所以请用internal_use
SQL>SHUTDOWN IMMEDIATE;
SQL>STARTUP MOUNT EXCLUSIVE;
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 NATIONAL CHARACTER SET INTERNAL_USE UTF8;
SQL>SHUTDOWN immediate;
SQL>startup;如果按上面的做法做,National charset的区域设置就没有问题
http://blog.csdn.net/tianlesoftware/archive/2009/12/01/4915223.aspx
------------------------------------------------------------------------------
Blog: http://blog.csdn.net/tianlesoftware
网上资源: http://tianlesoftware.download.csdn.net
相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
Q Q 群:62697716
这个比较困难...
------------------------------------------------------------------------------
Blog: http://blog.csdn.net/tianlesoftware
网上资源: http://tianlesoftware.download.csdn.net
相关视频:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
Q Q 群:62697716