我必须在Oracle 11g r2 Express实例中将字符集从AL32UTF8更改为WE8MSWIN1252 ...我尝试使用以下命令:
ALTER DATABASE CHARACTER SET WE8MSWIN1252;
但是它不能说MSWIN1252不是AL32UTF8的超集。然后,我发现了一些有关CSSCAN的文章,而该工具似乎在Oracle 11 Express中不可用。
http://www.oracle-base.com/articles/10g/CharacterSetMigration.php
任何人都知道如何做到这一点?提前致谢
编辑
澄清一下:真正的问题是我试图将数据导入到具有定义为VARCHAR(6字节)的列的表中。导致问题的字符串是“eq.mês”,MSWIN1252需要6个字节,UT8需要7个字节
最佳答案
你不能
Express版本的11g仅在使用UTF-8字符集时才可用。如果您想回到10g的快速版,则有一个使用Windows-1252字符集的西欧版本。与其他版本不同,Oracle不支持Express Edition中的所有字符集,也不支持更改现有XE数据库的字符集。
为什么您认为需要更改数据库字符集?除了可能花费更多的存储空间来支持Windows-1252范围的上半部分的字符(通常使用率不高)之外,UTF-8数据库的缺点并不多。
关于oracle - 如何在Oracle 11g r2 Express版中更改字符集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9117416/