MSSQL系列 (二):表相关操作、列操作、(唯一、主键、默认、检
发布时间:2020-12-12 12:39:59 所属栏目:MsSql教程 来源:网络整理
导读:1.创建表 -- 创建学生班级表 create table StuClass( ClassId int primary key , 班级ID 主键约束 ClassName nvarchar ( 30 ) not null unique ,1)">班级名称 非空约束 唯一约束 CreateDate datetime default getdate (),1)">创建时间 默认值约束 IsDelete 1
1.创建表--创建学生班级表 create table StuClass ( ClassId int primary key,班级ID 主键约束 ClassName nvarchar(30) not null unique,1)">班级名称 非空约束 唯一约束 CreateDate datetime default getdate(),1)">创建时间 默认值约束 IsDelete 1) 'N' 是否删除 默认'N' 'Y'代表删除'N'代表不删除 默认值约束 ) go 创建学生表 Student ( StuId key identity(1,1),1)">学生ID 主键约束 自增长 StuName null,1)">学生姓名 非空约束 StuSex 2) check(stuSex=男' or stuSex女'),1)">学生性别 只是女或者男 检查约束 CreateDate 创建时间 默认当前时间 默认值约束 StuAge int,1)">学生年龄 无约束 ClassId foreign key (ClassId) references StuClass (ClassId),1)">班级ID 外键 IsDelete 是否删除 默认'N' 'Y'代表删除'N'代表不删除 创建学生科目表 StuSubject( SubjectId 科目ID SubjectName 30),1)">科目名称 go 创建学生成绩表 StuScore( StuId key (StuId) references Sutdent(StuId) on delete cascade,1)">学生ID 外键约束 同时支持级联删除 SubjectId key (SubjectId) references StuSubject(SubjectId) 学生科目 外键约束 StuScore float,1)">学生成绩 key(StuId,SubjectId) 联合主键 go 2.约束相关操作(添加、删除)添加约束的另一种方式 注意:两种方式只能用一种 --添加主键约束 alter table StuScore add constraint PK_StuScore_StuId_SubjectId key (StuId) 添加非空约束 column StuScore float null 添加检查约束 table StuInfo constraint CK_StuInfo_StuSex check(StuSexor StuSex'添加唯一约束 table StuClass constraint UQ_StuClass_ClassName unique(ClassName) 添加默认值约束 table StuClass constraint DF_StuClass_CreateDate default(getdate()) for CreateDate 添加外键约束 table StuInfo constraint FK_StuClass_StuInfo references StuClass(ClassId) cascade 删除单个约束 table StuScore drop FK_StuClass_StuInfo 删除多个约束 drop constraint FK_StuClass_StuInfo,PK_StuScore_StuId_SubjectId go 3.列相关操作添加列 add CreateDate getdate(); 删除列删除列名的时候 如果存在约束 要删除约束 DF__StuScore__Create__403A8C7D column修改列字段类型 float 修改表名注意:更改对象名的任何部分都可能破坏脚本和存储过程,谨慎操作 exec sp_rename Student',StuInfo' 修改表中的列名StuInfo.CreateDateCreateTimecolumngo 4.删除表删除表 注意当有主从表时候 先删从表 如果设置了联级删除 那么都会删除 if exists(select count(*) from sys.objects where nameStuScore StuScore go 5.临时表相关操作删除临时表 if object_id(tempdb..#StuInfo') is #StuInfo 创建临时表 #StuInfo ( StuId 学生年龄 无约束 IsDelete ' 是否删除 默认'N' 'Y'代表删除'N'代表不删除 默认值约束 ) ?6.相关系统表查询表、列、约束、索引信息查询表、列、约束、索引信息
sp_help StuInfo
? ? ?查询字段信息查询字段信息
sp_columns StuInfo
? ?注:个人微信公众号 个人QQ号 ? ? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- SQLSERVER MSSQL 去掉特殊字符 只保留字母和数字
- sql – 数据库:流水线函数
- SQLServer: 用ApexSqlLog2014恢复SqlServer2005数据
- 如何在实体框架中执行原始sql查询?
- 使用CLR存储过程方便快捷导出数据到Excel
- sql – 在多对多关系中查找具有完全匹配的记录
- SQL Server uniqueidentifier转换成varchar数据类型的sql语
- MYSQL ERROR 1045 (28000): Access denied for user (using
- clean-architecture – Clean Architecture – 如何处理数据
- 比较SQL Server与Oracle、DB2