首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ISO-8859-1 Oracle数据库中编码“欧元”字符

在ISO-8859-1 Oracle数据库中编码“欧元”字符
EN

Stack Overflow用户
提问于 2011-04-29 13:17:40
回答 1查看 3.5K关注 0票数 2

是否可以将“欧元”(作为VARCHAR)插入到字符集为: ISO-8859-1的Oracle数据库中?

我想从ISO-8859-1移到ISO-8859-15字符集(甚至是WINDOWS-1252字符集将适合我的数据库),以便将“欧元”存储在我的数据库中,但有人告诉我,如果数据库中有一个ISO-8859-1字符集,就可以直接存储我的“欧元”字符。

因此,问题是,目前,我正试图为ISO-8859-1数据库>插入“欧元”(取决于客户/驱动程序/等的字符集,但不取决于数据库的字符集)。

你对此有何看法??

如果是这样的话,那么为什么必须为数据库定义一个字符集?有人告诉我,这只是Oracle“知道编码该字符需要多少字节”(因此,选择一个字符集就等于只为Oracle选择若干位来编码每个字符。结论:对于Oracle来说,ISO-8859-1 = ISO-8859-15-WINDOWS = 1252,因为所需的位数是相同的.

我希望我(几乎)清楚..。但是,在我看来,,我认为永远不能执行插入(使用“欧元”),并在ISO-8859-1数据库中选择和检索我的“欧元”.

谢谢你读到我..。

(PS:数据库为10g版本)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-04-29 13:32:50

字符不在ISO-8859-1中分配.因此,您无法表示它。与ISE-8859-15中相同的字节用于表示¤ (货币通用符号).

来源

Oracle需要知道它将在哪个字符集中对数据库进行编码,以便实现以下目的:

  • 知道要存储每个字符的字节数
  • 能够在客户端NLS不同的情况下执行转换(某些客户端正在UTF-8中发送查询,其数据为有效的ISO-8859-1: Oracle可以将其转换)。
  • 分析列内容的包(如全文搜索)对列内容的字符很敏感。
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5832559

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档