文章目录
- 一、几种数据类型
 - 二、创建数据表
 - 三、修改数据表结构
 
一、几种数据类型
1、Character 字符串类型
 char、chr(5)、varchar、varchar(5)、text
数据类型  | 描述  | 
char(n)  | 固定长度的字符串。最多 8,000 个字符  | 
varchar(n)  | 可变长度的字符串。最多 8,000 个字符  | 
varchar(max)  | 可变长度的字符串。最多 1,073,741,824 个字符  | 
text  | 可变长度的字符串。最多 2GB 字符数据  | 
2、Unicode 字符串类型
 nchar、nvarchar、ntext
数据类型  | 描述  | 
nchar(n)  | 固定长度的 Unicode 数据,最多 4,000 个字符  | 
nvarchar(n)  | 可变长度的 Unicode 数据,最多 4,000 个字符  | 
nvarchar(max)  | 可变长度的 Unicode 数据,最多 536,870,912 个字符  | 
ntext  | 可变长度的 Unicode 数据,最多 2GB 字符数据  | 
3、整数类型
 int、smallint、tinyint、bigint、bit

4、浮点类型
 numeric、decimal、real
 注意:numeric(5,2)表示5位长度的数字,2位是小数部分。
数据类型  | 描述  | 存储  | 
numeric(p,s)  | 固定精度和比例的数字,允许从 -10^38 +1 到 10^38 -1 之间的数字,p 参数指示可以存储的最大位数(小数点左侧和右侧),p 必须是 1 到 38 之间的值。默认是 18。s 参数指示小数点右侧存储的,最大位数。s 必须是 0 到 p 之间的值,默认是 0  | 5-17字节  | 
decimal(p,s)  | 固定精度和比例的数字,允许从 -10^38 +1 到 10^38 -1 之间的数字,p 参数指示可以存储的最大位数(小数点左侧和右侧),p 必须是 1 到 38 之间的值,默认是 18。s 参数指示小数点右侧存储的最大位数,s 必须是 0 到 p 之间的值,默认是 0  | 5-17字节  | 
real  | 从 -3.40E + 38 到 3.40E + 38 的浮动精度数字数据  | 4字节  | 
5、货币类型
 money-8字节、smallmoney-4字节
数据类型  | 描述  | 存储  | 
money  | 介于 -922,337,203,685,477.5808 和 922,337,203,685,477.5807 之间的货币数据  | 8字节  | 
smallmoney  | 介于 -214,748.3648 和 214,748.3647 之间的货币数据  | 4字节  | 
6、时间类型
 data:日期,3字节
 time:时间,5字节
 datatime2:存放日期时间混合数据,精度小于3,8字节
 datatimeoffset:日期、时间、时区混合类型,10字节,精度100纳秒

7、二进制类型
 binary:1-8000字节,使用时需要指定长度
 varbinary:可变长度字节
 image:可变长度字节,1-2的31次方-1个字节,存放图片或文件信息
8、其他数据类型

二、创建数据表
1、SQL语句创建格式
CREATE TABLE table_name
(
column_name1 datatype,
column_name2 datatype
)
--table_name表名,column_name1列名
2、创建学生信息表
CREATE TABLE stu_info
(
s_num int not null,
s_name varchar(20) not null,
s_sex varchar(2),
s_option varchar(30),
s_score numeric(4,2)
)
以上信息分别表示学生的学号、姓名、性别、选修课、分数(2位小数的浮点数)
3、使用SQL server管理器创建
 直接右击数据库中的表,选择创建表,然后就可以设置的列名的数据类型。

4、设置主键(PRIMARY KEY)
CREATE TABLE stu_info_key
(
s_num int PRIMARY KEY,
s_name varchar(20) not null,
s_sex varchar(2),
s_option varchar(30),
s_score numeric(4,2)
)

三、修改数据表结构
1、修改格式(添加、更改、删除)
ALTER TABLE table_name
add
column_name datatype
ALTER TABLE table_name
ALTER column
column_name datatype
ALTER TABLE table_name
drop column
2、添加一个学生地址列
ALTER TABLE stu_info
ADD
s_addr varchar(50)
3、修改字段长度
ALTER TABLE stu_info
ALTER column s_addr char(20)
4、删除
--删除字段
ALTER TABLE stu_info
drop column s_addr
--删除表
DROP TABLE
5、表的截断(只删除表的数据)
truncate table6、重命名表
SP_RENAME stu_info_key,stu_info将原名stu_info_key改为stu_info
                










