日期和时间:Datetime(时间用字符串类型)
整数:int,smallint
数字:float,real
货币:Money
Bit数据类型:存储布尔数据类型
Image:可用来存储图像
Char,8000:固定长度的非Unicode字符数据
Varchar,8000:可变长度的非Unicode数据
Nchar,4000:固定长度的Unicode数据
Nvarchar,4000:可变长度Unicode数据
--创建数据库:
create database 数据库名
on primary
(
name='数据库名',
filename='数据库存放位置+数据库名.mdf',
size=5M,
filegrowth=1M,
)
log on
(
name='数据库名'
filename='数据库存放位置+数据库名.ldf',
size=1M,
filegrowth=10%
)
--创建表:
use 数据库名--调用数据库
create table 表名
(
stuId int identity(1,1) primary key,--主键,自增从1开始
stuName nvarchar(10) not null,--不能为空
stuAge int not null,
stuGender bit
)
--插入数据:
(1)insert into 表名(列名,...) values(值1,...)
(2)insert into 表名 values(值1,需要包含所有列)
(3)insert into 表名(列名,...)
select 值1,... union
select 值1,... union
select 值1,... union
--更新(修改)数据:
update 表名 set 列=值1,列=值2...where 条件
--删除数据:
delete from 表名 --数据删除,自增列仍然自增
drop table 表名 --删除表
truncate table 表名--只删除数据,自增列重新计算
--约束:
主键(PK):
alter table 表名 add constraint PK_Employees_EmpID(名称) primary key(列名)
唯一约束:
alter table 表名 add constraint UQ_Employees_EmpName(名称) unique(列名)
默认约束:
alter table 表名 add constraint DF_Employees_EmpGender default 值1 for 列名
检查约束:
alter table 表名 add constraint CK_Employees_Empage check(列名>=值1 and 列名<=值2)
主外健(FK)--存在问题
alter table 外键表名 add constraint FK_Employees_EmpId foreign key(副表列名) references 主键表名(主表列名)
--手动删除一列
alter table 表名 drop column 列名
--手动增加一列
alter table 表名 add 列名 varchar(20) not null
--手动修改一列的数据类型
alter table 表名 alter column 要修改的列名 varchar(200)