- 1、本文档共47页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 创建和使用表4.1 表的概念4.1.1 什么是表 SQL Server中的数据库由表的集合组成,这些表用于存储一组特定的结构化数据。表中包含行(也称为记录或元组)和列(也称为属性)的集合。 SQL Server提供了很多种数据类型,还可以根据需要用户自已定义新的数据类型,SQL Server中常用的数据类型如表4.1所示。数据类型说明number(p)整数(其中p为精度)decimal(p,s)浮点数(其中p为精度,d为小数位数)char(n)固定长度字符串(其中n为长度)varchar(n)可变长度字符串(其中n为最大长度)datetime日期和时间 空值是列的一种特殊取值,用NULL表示。空值既不是char型或varchar型中的空字符串,也不是int型的0值。它表示对应的数据是不确定的。 表中主键列必须有确定的取值(不能为空值),其余列的取值可以不确定(可以为空值)。4.1.2 表中数据的完整性 数据完整性包括规则、默认值和约束等。1. 规则 规则是指表中数据应满足一些基本条件。例如,学生成绩表中分数只能在0~100之间,学生表中性别只能取“男”或“女”之一等。2. 默认值 默认值是指表中数据的默认取值。例如,学生表中性别的默认可以设置为“男”。3.表的约束 约束是指表中数据应满足一些强制性条件,这些条件通常由用户在设计表时指定。 (1)非空约束(NOT NULL):非空约束是指数据列不接受NULL值。例如,学生表中学号通常设定为主键,不能接受NULL值。 (2)检查约束(CHECK约束):检查约束是指限制输入到一列或多列中的可能值。例如,学生表中性别约束为只能取“男”或“女”值。 (3)唯一约束(UNIQUE约束):唯一约束是指一列或多列组合不允许出现两个或两个以上的相同的值。例如,学生成绩表中,学号和课程号可以设置为唯一约束,因为一个学生对应一门课程不能有两个或以上的分数。 (4)主键约束(PRIMARY KEY约束):主键约束是指定义为主键(一列或多列组合)的列不允许出现两个或两个以上的相同值。例如,若将学生表中的学号设置为主键,则不能存在两个学号相同的学生记录。 (5)外键约束(FOREIGN KEY约束):一个表的外键通常指向另一个表的候选主键,所谓外键约束是指输入的外键值必须在对应的候选码中存在。例如,学生成绩表中的学号列是外键,对应于学生表的学号主键,外键约束是指输入学生成绩表中的学号值必须在学生表的学号列中已存在。4.2 创 建 表 SQL Server 提供了两种方法创建数据库表,第一种方法是利用SQL Server管理控制器建立表;另一种方法是利用T-SQL语句中的create table命令建立表。本章只介绍采用前一种方法建表,后一种方法将在下一章介绍。 【例4.1】使用SQL Server管理控制器在school数据库中建立student表(学生表)、teacher表(教师表)、course表(课程表)和score表(成绩表)。操作步骤启动SQL Server管理控制器,展开“LCB-PC”服务器节点。展开“数据库”节点。选中数据库“school”,展开school数据库。选中“表”,单击鼠标右键,在出现的快捷菜单中选择“新建表”命令,如图4.1所示。此时打开表设计器窗口,在“列名”栏中依次输入表的列名,并设置每个列的数据类型、长度等属性。输入完成后的结果如图4.2所示。名称:指定列名称。长度:数据类型的长度。默认值或绑定:在新增记录时,如果没有把值赋予该字段,则此默认值为字段值。数据类型:列的数据类型,用户可以单击该栏,然后单击出现的下三角按钮,即可进行选择。允许空:指定是否可以输入空值。RowGuid:可以让SQL Server产生一个全局唯一的列值,但列类型必须是uniqueidentifier。有此属性的列会自动产生列值,不需要用户输入(用户也不能输入)。排序规则:指定该列的排序规则。在“学号”列上右击鼠标,在出现的快捷菜单中选择“设置主键”命令,如图4.3所示,从而将“学号”列设置为该表的主键,此时,该列名前面会出现一个钥匙图标。单击工具栏中的保存 按钮,出现如图4.4所示的对话框,输入表的名称“student”,单击“确定”按钮。此时便建好了student表(表中没有数据)。依照上述步骤,再创建3个表:teacher表(教师表)、course表(课程表)和score表(学生成绩表)。表的结构分别如图4.7~图4.9所示。4.3 修改表的结构 采用SQL Server管理控制器修改和查看数据表结构十分简单,修改表结构与创建表结构的过程相同。 【例4.2】使用SQL Server管理控制器,先在student表中增加一个民族列(其数据类型为char(16)),然后
您可能关注的文档
- 年产2万吨硅烷偶联剂系列产品项目可行性研究报告(目录).doc
- 年产20万只金属工艺饰品生产项目可行性研究报告(目录).doc
- 年产30万立方米混凝土多孔砖及空心砌块生产线工艺设计.doc
- 第3课时光的折射全反射一轮学案.docx
- 年产30万吨氢氧化钠毕业设计.doc
- 平面构成的基本形式法则—重复与近似.ppt
- 年产3万吨原镁生产线污染治理技术改造项目可行性研究报告.doc
- 平面镜成像,球面镜的应用.ppt
- 年保卫处工作总结.doc
- 年产5万吨生物质固体成型燃料项目可行性研究报告(目录).doc
- 2025年乡村传统手工艺跨境电商孵化基地市场渠道拓展与合作伙伴招募报告.docx
- 初中历史教学流程再造:基于人工智能的历史事件分析与应用研究教学研究课题报告.docx
- 2025年乡村传统手工艺跨境电商孵化基地跨境电商产业链协同发展报告.docx
- 2025年乡村传统手工艺跨境电商孵化基地市场拓展与国际合作报告.docx
- 中国弧焊机触电保护器行业市场规模及未来投资方向研究报告.pdf
- 2025年乡村传统手工艺跨境电商市场潜力分析与预测报告.docx
- 2025年乡村传统手工艺跨境电商孵化基地运营模式与盈利路径分析.docx
- 2025年乡村传统手工艺跨境电商孵化基地资金筹措与风险控制报告.docx
- 2025年上海市乙苯脱氢原料杂质控制技术优化可行性研究.docx
- 2025年乡村传统手工艺跨境电商孵化基地社会责任与可持续发展报告.docx
文档评论(0)