序号 |
类别 |
SQL |
C# |
备注 |
1 |
整数 |
bit |
Boolean |
True转换为1,False转换为0 |
2 |
tinyint |
Byte |
C#数据类型都位于System命名空间 | |
3 |
smallint |
Int16 | ||
4 |
int |
Int32 | ||
5 |
bigint |
Int64 | ||
6 |
smallmoney |
decimal | ||
7 |
money |
decimal | ||
8 |
numeric |
decimal | ||
9 |
decimal |
decimal | ||
10 |
浮点数 |
float |
double | |
11 |
real |
single | ||
12 |
日期和时间 |
smalldatetime |
datetime | |
13 |
datetime |
datetime | ||
14 |
timestamp |
datetime | ||
15 |
字符串 |
char |
string | |
16 |
text |
string | ||
17 |
varchar |
string | ||
18 |
nchar |
string | ||
19 |
ntext |
string | ||
20 |
nvarchar |
string | ||
21 |
二进制数据 |
binary |
Byte[] | |
22 |
varbinary |
Byte[] | ||
23 |
image |
Byte[] | ||
24 |
其他 |
uniqueidentifier |
guid | |
25 |
variant |
object |
SQL Server 2005的数据类型与SQL 2000有一些不同,在创建表时,列的数据类型需要注意几点
- 用varchar(max)代替text。varchar的最大长度为8000,但是varchar(max)则可以存储多达2G的数据,因此其作用相当于SQL 2000中的text。但是微软可能会后续的SQL Server版本中移除text类型,从现在就应该用varchar(max) 来代替text。
- 用nvarchar(max)代替ntext,用binary(max)代替image.
- 为XML数据选择xml类型。在SQL Server 2005中,为XML数据添加了相应的数据类型,因此存储XML数据的列不需要用varchar(max)或nvarchar(max),而应当用xml数据类型,以利用T-SQL中专门针对xml数据列的新命令,以及针对xml列的索引。