USE TEST_427 --使用TEST_427这个数据库,表示对该数据库进行建表操作 GO CREATE TABLE XSB --创建XSB表 ( StudentNo char(6) NOT NULL PRIMARY KEY, --列名 + 类型 + 是否可为空,最后设置主键 StudentName char(8) NOT NULL, StudentSex bit NULL DEFAULT 1, --用default设置默认值,此处设为1 Sbrithday date NULL, StudentSpecialty char(12) NULL, SumCredit int NULL, StudentRemarks varchar(500) NULL --最后不用逗号 )
如果不加上 USE TEST_427,那么默认所创建的表为当前数据库的。
创建一个带计算列的表
--创建一个带计算列的表 USE TEST_427 GO CREATE TABLE TEST_1 ( CourseID char(3) PRIMARY KEY, --由于主键本身不能为空,所以在此可以不加NOT NULL,因为本身就不为空 SumScore real NOT NULL, --real 是浮点型的一种,精度为7位有效数字 SumNumberOfStudent int NOT NULL, AverageScore AS SumScore/SumNumberOfStudent PERSISTED --使用AS字段,还有persisted,表示留存 )
如果没有使用PERSISTED关键字,则在计算列上不能添加 PRIMARY KEY, UNIQUE, DEFAULT等约束条件,由于计算列上的值是通过服务器计算得到的,所以在插入或者修改数据时不能对计算列赋值。
--在表中增加新列 USE TEST_427 GO ALTER TABLE XSB --修改表XSB ADD scholarship tinyint NULL --增加奖学金这一列 GO USE TEST_427 GO ALTER TABLE TEST_1 ADD scholarship_1 tinyint NULL,--添加两个列,用逗号隔开即可 scholarship_2 tinyint NULL GO
--在表中删除列 USE TEST_427 GO ALTER TABLE XSB DROP COLUMN scholarship --注意添加column表示删除的是列 GO
在写这段代码的时候,容易忘了添加一些关键字,如column
所以我们可以翻译成字面意思来加深记忆和理解,翻译如下:
小技巧:在敲SQL语句的时候,可以在心里默念这样的中文,一来容易记忆,二来不容易出错漏掉一些关键字
--修改表中的属性,使用alter --将姓名的列长度改为10,将出生日期的数据类型从data改为datatime USE TEST_427 GO ALTER TABLE XSB ALTER COLUMN StudentName char(10) --使用alter表示更新修改 GO ALTER TABLE XSB ALTER COLUMN Sbirthday datetime GO
--删除表 USE TEST_427 GO DROP TABLE XSB --drop删除表
关于SQL Server的其他学习笔记