SQL Server中开发常用的数据类型
我们在日常开发过程中,在进行数据库设计的时候,经常会遇到如果选择数据类型的问题,选择什么样的数据类型最合适,然后当我们在项目中建立对应实体的时候,如何选择对应的CLR类型。针对这些问题,于是这篇文章诞生了。
SQL Server数据类型 | 占用字节数 | 表示范围 | 对应的CLR类型 | 數據類型選擇 | 适用场景 |
char | char(n) | System.String | char(2) | 使用char(2)来表示类型或状态(建议用tinyint代替) | |
varchar | varchar(n) | 1~8000 | System.String | varchar(20) | 只包含英文字符的字符串 |
nvarchar | nvarchar(n) | 1~4000 | System.String | nvarchar(20) | 包含中文字符的字符串 |
int | 4个字节 | -2,147,483,648 到 2,147,483,647 | System.Int32 | int | 表示整型,比如自增ID和表示數量 |
bigint | 8个字节 | -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 | System.Int64(Long) | bigint | 表示长整型,比如自增ID(数量比较大的情况下) |
decimal | 5~17字节 | System.Decimal | decimal(18,2) | 金额和價格(和錢相關的) | |
tinyint | 1字节 | 0~255 | System.Byte | tinyint | 类型和状态,比char(2)扩展性好 |
bit | 0,1或NULL | System.Boolean | bit | 一般用来表示是和否两种情形,比如IsStop | |
datetime | 8字节 | 1753 年 1 月 1 日到 9999 年 12 月 31 日 | System.DateTime | datetime | 表示日期和时间 |
time | System.TimeSpan | time(7) | 表示时间间隔,比如计时和耗時 | ||
varbinary | System.Byte | varbinary(max) | 表示二进制数据 |
明星效应。很简单,在一个领域保持顶尖水平,比在一两个领域保持领先水平和五六个领域保持一般水准都要更有价值、并且收益更好。
有悖常识的真相:让未来更开放的方式,正是专注的去做好一件事情。这个世界上最成功的人,他们在某一领域获得成功之后,可通过经营杠杆进入任何他们想要涉足的领域。而这都得依赖于他们曾极致的专注在做好一件事情上。