数据类型
字符串 Unicode字符串 日期时间 数值类型
一. 字符串类型
用于存储汉字 字母 数字符号等,包括char、varchar、text
- char(n)定长字符串 n取值1-8000 不足n的部分被空格填充
- varchar(n)变长字符串 不足n的部分不被空格填充
- test存储超过8000字节数据。但数据类型占用字节长度可变,不可用作定义变量是的数据类型
区别字符与字节
字符是计算机使用的符号
字节是计算机存储信息的基本单位
二. Unicode字符串类型
格式前加大写字母N,Unicode字符串包括nchar nvarchar ntext类型,Unicode字符串数据中每个字符固定占用2个字符
三. 日期时间类型
SQL Server日期时间类型由datetime(最全面,包括秒的小数部分) date(不存储时分秒) time
插入系统当前时间getdate()
INSERT INTO zyb_student VALUES(getdate(),getdate()…)
四. 数值类型
精确数值类型
存放整数的 int smallint tinyint bigint 和用来存放小数的decimal numeric money smallmoney
近似数值类型
存储包括小数点的数值,包括n取1-24用float(n)和n取25-53用real
输入字符类型和日期时间类型的数据需要使用单引号
输入数值类型时不需要处理
小优化
数值型方式存储比字符型或日期时间类型更节省空间,例如,"100"存储为字符型时占用3个字节,而存储为数值型时只占用1个字节。
数据库默认将不使用引号包围的值当做数值型。同时由于使用非数字字符无法被识别为数值,只能使用引号包围表明为字符型。
五. 运算符
算术运算符
比较运算符
逻辑运算符(UNKNOWN/FALSE/TRUE)
连接运算符:
- +两边是字符型数值时–>字符串连接;
- 如果其中一边是数值型数值–>数学运算;