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

varchar或nvarchar

邓仲卿
2023-03-14
问题内容

我存储的名字和姓氏各不超过30个字符。哪个更好varchar还是nvarchar

我已阅读,nvarchar尽可能多的空间两倍占用比varcharnvarchar用于国际化。

那么您建议我使用什么:nvarcharvarchar

还请让我知道两者的性能。两者的性能相同还是不同?因为空间不是太大的问题。问题是表现。


问题答案:

基本上,nvarchar意味着您可以处理很多字母,而不仅仅是普通英语。从技术上讲,它意味着支持unicode,而不仅仅是ANSI。这意味着全角字符或大约是空格的两倍。这些天的磁盘空间是如此的便宜,您不妨从一开始就使用nvarchar,而不必在产品生命周期内经历更改之苦。

如果您确定只需要支持一种语言,就可以使用varchar,否则,我会使用nvarchar。

编辑:如注释中所述,将ascii更改为ANSI。



 类似资料:
  • 问题内容: 是否可以将SQL Server 2008数据库中的列类型从更改为,而不必删除表并重新创建? 每当我尝试使用SQL Server Management Studio进行操作时,SQL Server Management Studio都会向我抛出一个错误-但是让我头疼的是,很高兴知道我是否可以更改类型而不必删除和创建。 谢谢 问题答案: 您应该能够使用TSQL做到这一点。 就像是

  • 问题内容: 各自的优缺点是什么? 我的要求是: 我希望能够加密图像 可以通过Web服务器(RESTful API)在移动设备上轻松访问 可通过本地数据库(如SQLLite)在移动设备上轻松访问 服务器端使用的数据库是MS SQL2005。我相信SQLLite和MS SQL 2005可以同时支持varchar和varbinary(sqllite上的BLOB) 问题答案: Base64在一个字节中仅使

  • 问题内容: 我的问题是在SQL中生成列时最好使用什么。nvarchar(varchar)的大小应该乘以2(32、64、128)还是无关紧要的,我们可以使用全数字,例如‘100’,‘50’吗? 非常感谢您提供原因的答案 祝福大家 问题答案: 没有任何区别。使用适合您数据的大小。 例如,SQL Server,如果您查看“记录的解剖”,您会发现大小转换为依赖于表中先前记录,空值和其他因素的记录偏移量,尤

  • 问题内容: 在MySQL中使用UUID作为主键有意义吗? 除了手动查询的麻烦之外,使用UUID代替常规INT的利弊是什么? 问题答案: UUID的主要缺点是,如果您想在以后引用该记录以供进一步使用,则必须事先创建它们(即:在相关的外键表中添加子记录): 不会让您看到新的UUID值是什么,并且由于您没有使用常规的auto_incremented主键,因此无法使用它来检索它。您必须分两步进行:

  • 问题内容: 我需要一个简单的表,其中包含MySQL中的用户名和密码字段。由于用户名必须唯一,因此对我来说,将它们设置为主键是有意义的。 使用还是作为主键更好? 问题答案: 可能还只是使用用户ID索引,所以与vs / char / varchar相比,连接要快得多。如果您不小心扩展了架构的功能,那么现在添加所需的两秒钟时间可以为您节省很多时间。 要考虑的一些陷阱: 说我们在将来的日期添加一些表,如果

  • 问题内容: 在给定SQL Server 2012的情况下,如何在SQL脚本的nvarchar或varchar列中插入控制字符(以ASCII 32编码的字符,如TAB,CR,LF)? 问题答案: 除非我在问题中遗漏任何东西,否则可以使用TSQL CHAR()函数执行此操作: 将插入CR / LF。其他代码也一样。 编辑 那里还有TSQL NCHAR()以及Unicode字符。