我们最近遇到了一个问题,一个商标符号被从一个Oracle数据库复制到另一个数据库,但它被认为是一个'?‘。
我们已经跟踪到使用'US7ASCII‘字符集配置的目标数据库的问题。不幸的是,重建数据库来解决这个问题目前还不是我们能做的事情。
有没有一种方法可以定义一个特定的列来使用服务器上配置的字符集以外的字符集?
发布于 2010-04-21 16:04:12
您可以使用UTF-7 encoding以7位编码存储任意Unicode字符串。Unicode文本的UTF-7编码恰好是完全合法的ASCII文本。
当然,无论您想在哪里使用这些值,这都需要特别注意,因为它们不是按原样可读的(而且UTF-7很少使用,因此您可能并不是所有地方都支持它)。
或者,您可以使用更常见的编码,如BASE64,但这样做的缺点是,即使是几乎为ASCII码的文本在这种编码中也是完全不可读的。这意味着当某些部分不能正确处理编码时,您至少得不到人类可读的内容。
https://stackoverflow.com/questions/2681180
复制相似问题