当前位置: 首页 > 面试题库 >

法国和西班牙的特殊字符可以在varchar中保存吗?

柴宏浚
2023-03-14
问题内容

法语和西班牙语中有特殊字符,而普通英语(带重音的元音等)不使用特殊字符。

varchar支持那些字符吗?还是我需要一个nvarchar?

(注:我 希望在我是否应该使用为nvarchar或varchar的讨论。)


问题答案:

您在说什么SQL实现?

我可以说说Microsoft Sql Server。其他SQL实现,不是很多。

对于Microsoft SQL
Server,默认排序规则为SQL_Latin1_General_CP1_CI_AS(拉丁1常规,保留大小写,不区分大小写,区分重音)。它允许
大多数 西欧语言以单字节形式(varchar)而不是双字节形式(nvarchar)来回表示。

它建立在“ Windows
1252”代码页上。该代码页实际上是ISO-8859-1,代码点范围0x80’-0x9F由另一组字形表示,包括0x80处的欧元符号。ISO-8859-1将代码点范围指定为控制字符,没有图形表示。

ISO-8859-1由Unicodes 基本多语言平面
的前256个字符组成,覆盖了8位字符(0x00’‘-0xFF)的整个域。

西欧语言在这种排序顺序上会遇到困难,包括(但不一定限于)拉脱维亚文,立陶宛文,波利奇文,捷克文和斯洛伐克文。如果需要支持这些功能,则要么需要使用其他排序规则(SQL
Server提供了很多排序规则),要么转向使用nvarchar。

应该注意的是,在数据库中混合排序规则往往会引起问题。只有在必要时才应偏离默认排序规则,并且应了解如何使用默认排序规则。

我怀疑Oracle和DB2提供了类似的支持。我不了解MySQL或其他实现。



 类似资料:
  • 我使用HtmlCleaner库来解析/转换java中的HTML文件。 似乎无法处理像“Áák NUÍíNU NU NU NU NU”这样的西班牙语字符 我可以在HtmlCleaner中设置任何属性来处理此解决方案或任何其他解决方案吗?这是我用来调用它的代码:

  • 问题内容: 我在页面上添加了一个简单的排序。这个想法是搜索产品。这些产品是用西班牙语编写的,带有口音。例如:“Jamón”。 这是我的代码: 我唯一的问题是您必须输入“Jamón”才能找到产品“Jamón”。我想要的是更加灵活,如果用户键入“ Jamon”,则结果必须包含“Jamón”。 如何使用角度过滤器进行搜索而忘记重音符号?任何想法? 提前致谢。 问题答案: 您需要创建一个过滤器功能(或完整

  • 绝影是在宾馆里首先见到BOSSLiu的,见面第一句话他正要问:“BOSS啊,最近有啥研究成果没有?拿出来分享分享。”哪晓得这次被BOSSLiu抢了先,只不过这次他万分激动地说:“BOSS啊,我发现现在金子遍地都是,剩下的就是如何去拣了!” BOSSLiu一改往日的习惯,这反而让绝影不知如何应对了。比如写程序,以前习惯用_snprintf,现在突然又冒出个_snprintf_s来,一时间竟不知道从哪

  • 问题内容: 我想通过javascript函数将文本显示为HTML。如何在JS中转义html特殊字符?是否有API? 问题答案:

  • 我在Java执行HTTP GET调用以获取可能包含西班牙语字符的内容,例如:@añez 但我从MySQL-:'a:±ez得到的回应是,到目前为止,我在网上搜索并做了以下操作: > 在连接字符串中追加了utf-8作为编码(使用Java)jdbc:mysql:/localhost:3306/dbname?useUnicode=true&characterencoding=utf-8 更新了表的编码AL

  • 我使用的是FOP(2.3.0版)。当我尝试编译我从OFFO下载的西班牙语模式时,运行,我得到下一个错误: 最后一行输出被重复无数次。 其他模式编译起来没有问题,但是当我包含西班牙语模式时,构建过程崩溃了。为了确保文件没有损坏,我下载了一个更新版本的es.xml,但是ant仍然崩溃。