表示我的Object的正确SQL DataType是什么?

时间:2011-07-07 19:59:45

标签: sql-server-2008 char ascii varchar extended-ascii

我的对象是一个字符串,实现为1-50 US-ASCII data个字符的数组。

  1. 我应该使用什么SQL数据类型在我的数据库表中表示它?
    • 我正在使用SQL Server Express 2008.(这有关系吗?)
  2. 表示Extended ASCII是否需要与表示Standard ASCII不同的数据类型?

1 个答案:

答案 0 :(得分:1)

如果您需要可变长度的US-ASCII字段(最多50个字符),请使用VARCHAR(50)。如果要使用Unicode,则需要使用NVARCHAR(50)

  

varchar [(n | max)]

     

可变长度的非Unicode字符数据。 n可以是1到8,000之间的值。 max表示最大存储大小为2 ^ 31-1个字节。存储大小是输入的实际数据长度+ 2个字节。输入的数据长度可以是0个字符。 varchar的ISO同义词是char变化或字符变化。

  

除非使用COLLATE子句分配特定的排序规则,否则将为使用char或varchar的对象分配数据库的默认排序规则。排序规则控制用于存储字符数据的代码页。


  

nvarchar [(n | max)]

     

可变长度的Unicode字符数据。可以是1到4,000之间的值。 max表示最大存储大小为2 ^ 31-1个字节。存储大小(以字节为单位)是输入字符数的两倍+ 2个字节。输入的数据长度可以是0个字符。 nvarchar的ISO同义词是国家字符变化和国家字符变化。