![[宋吉兵]第4章 数据库表管理_第1页](http://file1.renrendoc.com/fileroot_temp2/2020-3/30/4dafb039-ac5e-4516-9795-e7196031cde9/4dafb039-ac5e-4516-9795-e7196031cde91.gif)
![[宋吉兵]第4章 数据库表管理_第2页](http://file1.renrendoc.com/fileroot_temp2/2020-3/30/4dafb039-ac5e-4516-9795-e7196031cde9/4dafb039-ac5e-4516-9795-e7196031cde92.gif)
![[宋吉兵]第4章 数据库表管理_第3页](http://file1.renrendoc.com/fileroot_temp2/2020-3/30/4dafb039-ac5e-4516-9795-e7196031cde9/4dafb039-ac5e-4516-9795-e7196031cde93.gif)
![[宋吉兵]第4章 数据库表管理_第4页](http://file1.renrendoc.com/fileroot_temp2/2020-3/30/4dafb039-ac5e-4516-9795-e7196031cde9/4dafb039-ac5e-4516-9795-e7196031cde94.gif)
![[宋吉兵]第4章 数据库表管理_第5页](http://file1.renrendoc.com/fileroot_temp2/2020-3/30/4dafb039-ac5e-4516-9795-e7196031cde9/4dafb039-ac5e-4516-9795-e7196031cde95.gif)
已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1 第二章 SQLServer数据库表管理 2 回顾 使用企业管理器创建组 注册用两种方法创建 修改 查看数据库移动和配置数据库的选项 3 本章目标 使用企业管理器创建数据库表设置表的主键 外键和建立表之间的关系为表增加约束 4 再论数据完整性2 1 数据完整性 5 再论数据完整性2 2 数据存放在表中 数据完整性的问题大多是由于设计引起的 创建表的时候 就应当保证以后数据输入是正确的 错误的数据 不符合要求的数据不允许输入 创建表 保证数据的完整性 实施完整性约束 6 完整性包括 2 1 输入的类型是否正确 年龄必须是数字输入的格式是否正确 身份证号码必须是18位是否在允许的范围内 性别只能是 男 或者 女 是否存在重复输入 学员信息输入了两次是否符合其他特定要求 信誉值大于5的用户才能够加入会员列表 7 完整性包括 2 2 8 实体完整性 思考 能否将学号为 0010014 的记录插入学生表中 约束方法 唯一约束 主键约束 标识列 9 域完整性 约束方法 限制数据类型 检查约束 外键约束 默认值 非空约束 10 引用完整性 约束方法 外键约束 11 自定义完整性 约束方法 规则 存储过程 触发器 12 表操作 在企业管理器中演示打开表 数据输入等操作 13 创建数据库表 1 14 SQLServer的数据类型 15 思考 电话号码一般使用什么数据类型存储 性别一般使用什么数据类型存储 年龄信息一般使用什么数据类型存储 照片信息一般使用什么数据类型存储 薪水一般使用什么数据类型存储 16 创建数据库表 2 17 思考 学员姓名允许为空吗 家庭地址允许为空吗 电子邮件信息允许为空吗 考试成绩允许为空吗 18 创建数据库表 3 19 思考 在主键列输入的数值 允许为空吗 一个表可以有多个主键吗 在一个学校数据库中 如果一个学校内允许重名的学员 但是一个班级内不允许学员重名 可以组合班级和姓名两个字段一起来作为主键吗 20 选择主键的原则 最少性尽量选择单个键作为主键稳定性尽量选择数值更新少的列作为主键 21 创建数据库表 4 表中没有合适的列作为主键怎么办 22 思考 标识列允许为字符数据类型吗 如果标识列A的初始值为1 增长量为2 则输入三行数据以后 再删除两行 下次再输入数据行的时候 标识值从多少开始 23 创建数据库表 5 24 创建数据库表 6 演示建立主 外键关系 25 关系图 演示关系图 26 主表和从表 1 当主表中没有对应的记录时 不能将记录添加到子表 成绩表中不能出现在学员信息表中不存在的学号 2 不能更改主表中的值而导致子表中的记录孤立 把学员信息表中的学号改变了 学员成绩表中的学号也应当随之改变 3 子表存在与主表对应的记录 不能从主表中删除该行 不能把有成绩的学员删除了4 删除主表前 先删子表 先删学员成绩表 后删除学员信息表 27 创建数据库表 7 演示建立检查约束 28 创建数据库表完毕 输入数据项 验证主键 主外键关系 检查约束 29 创建表 建表的语法 CREATETABLE表名 字段1数据类型列的特征 字段2数据类型列的特征 列的特征 包括该列是是否为空 NULL 是否是标识列 自动编号 是否有默认值 是否为主键等 30 建表示例1 USEstuDB 将当前数据库设置为stuDBGOCREATETABLEstuInfo 创建学员信息表 stuNameVARCHAR 20 NOTNULL 姓名 非空 必填 stuNoCHAR 6 NOTNULL 学号 非空 必填 stuAgeINTNOTNULL 年龄 INT类型默认为4个字节stuIDNUMERIC 18 0 身份证号stuSeatSMALLINTIDENTITY 1 1 座位号 自动编号stuAddressTEXT 住址 允许为空 即可选输入 GO NUMERIC 18 0 代表18位数字 小数位数为0 演示 创建学员信息表stuInfo IDENTITY 起始值 递增量 31 建表示例2 CREATETABLEstuMarks ExamNoCHAR 7 NOTNULL 考号stuNoCHAR 6 NOTNULL 学号writtenExamINTNOTNULL 笔试成绩LabExamINTNOTNULL 机试成绩 GO 演示 创建学员成绩表stuMarks 32 删除表 如果当前数据库中已存在stuInfo表 再次创建时系统将提示出错 如何解决呢 33 删除表 删除表的语法 DROPTABLE表名 USEstuDB 将当前数据库设置为stuDB 以便在stuDB数据库中建表GOIFEXISTS SELECT FROMsysobjectsWHEREname stuInfo DROPTABLEstuInfoCREATETABLEstuInfo 创建学员信息表 GO 34 SQLServer的约束 约束的目的 确保表中数据的完整型常用的约束类型 主键约束 PrimaryKeyConstraint 要求主键列数据唯一 并且不允许为空唯一约束 UniqueConstraint 要求该列唯一 允许为空 但只能出现一个空值 检查约束 CheckConstraint 某列取值范围限制 格式限制等 如有关年龄的约束默认约束 DefaultConstraint 某列的默认值 如我们的男性学员较多 性别默认为 男 外键约束 ForeignKeyConstraint 用于两表间建立关系 需要指定引用主表的那列 35 添加约束 添加约束的语法 ALTERTABLE表名ADDCONSTRAINT约束名约束类型具体的约束说明 约束名的取名规则推荐采用 约束类型 约束字段主键 PrimaryKey 约束 如PK stuNo唯一 UniqueKey 约束 如UQ stuID默认 DefaultKey 约束 如DF stuAddress检查 CheckKey 约束 如CK stuAge外键 ForeignKey 约束 如FK stuNo 36 添加约束示例 ALTERTABLEstuInfoADDCONSTRAINTPK stuNoPRIMARYKEY stuNo ALTERTABLEstuInfoADDCONSTRAINTUQ stuIDUNIQUE stuID ALTERTABLEstuInfoADDCONSTRAINTDF stuAddressDEFAULT 地址不详 FORstuAddressALTERTABLEstuInfoADDCONSTRAINTCK stuAgeCHECK stuAgeBETWEEN15AND40 ALTERTABLEstuMarksADDCONSTRAINTFK stuNoFOREIGNKEY stuNo REFERENCESstuInfo stuNo GO 演示 给学员信息表stuInfo添加约束 添加主键约束 stuNo作为主键 添加唯一约束 因为每人的身份证号全国唯一 添加默认约束 如果地址不填 默认为 地址不详 添加检查check约束 要求年龄只能在15 40岁之间 添加外键约束 主表stuInfo和从表stuMarks建立关系 关联字段为stuNo 37 删除约束 如果错误地添加了约束 我们还可以删除约束删除约束的语法 ALTERTABLE表名DROPCONSTRAINT约束名 例如 删除stuInfo表中地址默认约束ALTERTABLEstuInfoDROPCONSTRAINTDF stuAddress 38 总结 SQLServer创建表的过程是规定数据列的属性的过程 同时也是实施数据完整性 包括实体完整性 引用完整性和域完整性等 保证的过程实体完整性数据行不能存在重复 引用完整性要求子表中的相关项必须在主表中存在域完整性实现了对输入到特定列的数值的限制SQLServer中存在五种约束 分别是 主键约束 外键约束 检查约束
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 年度机械设备维护计划与故障预防措施
- 团队沟通技巧培训课件合集
- 高校课程表电子化设计方法
- 民族艺术课件
- 《市场营销学》课件市场营销导论01
- 空天卫星抗辐射设计创新创业项目商业计划书
- 建筑工程造价控制与审核指南
- 海南大学《黔东南红色文化研究》2024-2025学年第一学期期末试卷
- 广西师范大学《景观生态学理论》2024-2025学年第一学期期末试卷
- 合肥学院《小学教育思想选讲》2024-2025学年第一学期期末试卷
- 福建省福州市联盟校2023-2024学年高一下学期期末考试英语试题(解析版)
- 2025年江苏省苏豪控股集团有限公司校园招聘笔试备考试题及答案详解(必刷)
- (完整)中小学“学宪法、讲宪法”知识竞赛题库及答案
- 2025年行政执法人员执法证考试必考多选题库及答案(共300题)
- 《工程勘察设计收费标准》(2002年修订本)
- 2024年自投光伏安装合同范本
- 药品出、入库验收制度
- 车间员工技能管理办法
- DB11T 1581-2018 生产经营单位应急能力评估规范
- 汶川地震波时程记录(卧龙3向)
- 吴迪完胜股市学习笔记
评论
0/150
提交评论