我们有一组脚本,用于Oracle作为SQL Server。 这些脚本是ANSI。
现在我们也想支持Unicode数据库。但这需要对我们的脚本进行一些修改。例如,使用不同的数据类型并在字符串前加上“N”。
有人知道是否有工具将脚本转换为unicode /从unicode转换脚本?我找不到任何使用多个搜索引擎的东西。
答案 0 :(得分:2)
在 Oracle 中,您有两种方法。如果您完全控制数据库服务器,我建议您只更改默认字符集,即NLS_CHARACTERSET
参数的值,并保持其余数据库内容不变。使用常规CHAR / VARCHAR2列可提供更广泛的功能集(例如全文索引)。
如果没有对服务器的完全控制,或者您需要与旧的非多字节感知应用程序保持兼容,则必须检查NLS_NCHAR_CHARACTERSET
参数的值并将所有数据库内容更改为使用NCHAR / NVARCHAR2数据类型。
这是另一个突出差异的问题:
Difference between VARCHAR2(10 CHAR) and NVARCHAR2(10)
最后但同样重要的是,这里有一些有用的查询:
SELECT * FROM NLS_DATABASE_PARAMETERS;
SELECT * FROM NLS_INSTANCE_PARAMETERS;
SELECT * FROM NLS_SESSION_PARAMETERS;
注意:抱歉,我无法使用迁移工具或SQL Server部件。