SQL Server 创建表,添加约束

来源:互联网 发布:淘宝自动输入验证码 编辑:程序博客网 时间:2024/06/05 03:04
USE Student
--创建系别表


CREATE TABLE Department1(
  DeptId INT IDENTITY(1001,1) NOT NULL,--自动增长列
  DeptName VARCHAR(30) NOT NULL,--系别名称   
)  
--创建学生表
CREATE TABLE Students(
StuId varchar(5) not null,--学生编号
StuName varchar(20) not null,--学生姓名
StuSex bit not null,--学生性别
StuAge int not null ,--年龄
StuBornDate datetime not null ,--出生日期
StuPhone varchar(18)  null,--电话
StuAddress varchar(200) null,--住址
DeptId int not null --系别编号
)
--创建课程表
CREATE TABLE Course(
   CourseId VARCHAR(4) not null,-- 课程编号
   CourseName VARCHAR(20) not null,--课程名称
   Credit INT not null --学分
 
)
--创建成绩表


CREATE TABLE Score(
   StuId VARCHAR(5) not null,-- 学生id
   CourseId VARCHAR(4) not null,--课程编号
   ExamDate DATETIME null,--考试日期
   ExamScore FLOAT not null --考试成绩
)
--修改表名
exec sp_rename Students,StudentInfo -- exec调用存储过程的关键字


--增删改 字段 语法
ALTER TABLE Students
 ADD IdCard VARCHAR(18) not null --增加列


ALTER TABLE Students
 DROP COLUMN IdCard --删除列


 ALTER TABLE Students
 ALTER COLUMN StuAddress VARCHAR(200) not null --修改列


 --讲数据库的学生表删除
 if exists (select * from sysobjects where name='Student')--判断当前是否存在学生表
 drop table Students --删除表结构




-- 添加约束
 --1主键约束 PK_student
 ALTER TABLE Students
 ADD CONSTRAINT PK_StuId PRIMARY KEY(StuId) --将stuid设为主键
 --2默认约束 defauLt DF_Address
 ALTER TABLE Students
 ADD CONSTRAINT DF_StuAddress DEFAULT('地址不详') FOR StuAddress 


 --3检查约束 CK_StuAge
 ALTER TABLE Students
 ADD CONSTRAINT CK_StuAge CHECK(StuAge>0) --将stuage设置为检查约束
 --4添加唯一约束 UQ_StuPhone
 ALTER TABLE Students
 ADD CONSTRAINT UQ_StuPhone UNIQUE(StuPhone) --将stuphone设置为唯一约束
 --5添加主键约束 PK_DeptId
 ALTER TABLE Department1
 ADD CONSTRAINT PK_DepId PRIMARY KEY(DeptId) --将deptid设置为主键 


 --6添加外键约束
 ALTER TABLE Students
 ADD CONSTRAINT FK_DeptId FOREIGN KEY(DeptId) 
 REFERENCES Department1(DeptId) --主表是 系别表 从表是students表


 --7添加唯一约束(deptname)
 ALTER TABLE Department1
 ADD CONSTRAINT UQ_DeptName UNIQUE(DeptName)
 --删除默认约束
 ALTER TABLE Students
 DROP CONSTRAINT DF_StuAddress
 --删除唯一约束
 ALTER TABLE Students
 DROP CONSTRAINT UQ_StuPhone
阅读全文
0 0
原创粉丝点击