实验3 数据表的基本操作
- 格式:doc
- 大小:5.58 MB
- 文档页数:24
南邮数据结构实验三南京邮电大学数据结构实验三、链表的基本操作实验目的本次实验的主要目的是理解链表的概念,掌握链表的基本操作,包括链表的创建、插入、删除和遍历。
实验内容本次实验分为以下几个部分:1、链表的定义与创建1.1 链表的概念链表是一种常见的数据结构,由一系列节点组成,每个节点包含数据和指向下一个节点的指针。
链表可以分为单链表、双链表和循环链表等不同类型。
本次实验将创建一个单链表。
1.2 链表节点的定义链表节点包含两个成员变量,分别是数据域和指针域。
数据域用于存储节点的数据,指针域指向下一个节点。
1.3 链表的创建在主函数中创建一个空链表,并添加一些初始数据,用于后续的操作。
2、链表的插入操作2.1 插入节点的位置链表的插入操作需要指定节点插入的位置,可以在链表的头部、尾部或者中间插入新节点。
2.2 插入节点的操作根据所选位置,在链表中插入新节点,并更新相应的指针。
3、链表的删除操作3.1 删除节点的位置链表的删除操作需要指定节点删除的位置,可以删除头节点、尾节点或者中间节点。
3.2 删除节点的操作根据所选位置,删除链表中的节点,并更新相应的指针。
4、链表的遍历操作通过循环遍历链表的所有节点,并输出每个节点的数据。
附件说明本文档涉及以下附件:附件1:源代码附件2:实验报告法律名词及注释本文所涉及的法律名词及注释如下:1、数据结构:数据的存储方式和操作组成的集合。
在计算机科学中,数据结构是计算机中存储、组织数据的方式。
2、链表:链表是一种常见的数据结构,由一系列节点组成,每个节点包含数据和指向下一个节点的指针。
3、节点:链表中的一个元素,包含数据域和指针域。
4、数据域:节点中存储的数据。
5、指针域:节点中指向下一个节点的指针。
6、插入操作:在链表中插入一个新节点。
7、删除操作:从链表中删除一个节点。
8、遍历操作:按照一定的顺序访问链表中的所有节点。
全文结束。
实验三创建数据库和数据表一、实验目的1. 掌握使用SQL Server Management Studio创建数据库的方法与步骤2. 掌握创建数据库的SQL 语句3、掌握使用SQL Server Management Studio创建数据表的方法与步骤4、掌握创建数据表的SQL 语句背景知识在SQL Server中,数据库是由数据库文件和事务日志文件组成的。
一个数据库至少应包含一个数据库文件和一个事务日志文件。
数据库文件是存放数据库数据和数据库对象的文件。
一个数据库可以有一个或多个数据库文件,当有多个数据库文件时,有一个文件被定义为主数据库文件,扩展名为.mdf,它用来存储数据库的启动信息和部分或全部数据,一个数据库只能有一个主数据库文件。
其它数据库文件被称为次数据库文件,扩展名为.ndf,它主要用来存储除主数据文件外的所有数据文件。
一个数据库可以没有次数据库文件,但也可以同时拥有多个次数据库文件。
事务日志文件是用来记录数据库更新情况的文件,扩展名为.ldf。
它包含恢复数据库所需的所有日志信息。
每个数据库必须至少有一个日志文件。
文件组是将多个数据库文件集合起来形成的一个整体。
每个文件组有一个组名。
文件组分为主文件组和用户定义文件组。
一个文件只能存在于一个文件组中,一个文件组也只能被一个数据库使用。
注:事务日志文件不属于任何文件组。
二、实验内容与步骤2.1 操作内容:●创建一个名为“testdb”数据库:(1)包含一个数据文件,逻辑文件名“testdb_data”,磁盘文件名‘d:\testdb-data.mdf’,文件初始容量为5MB,最大容量为15MB,文件容量递增值为1MB;(2)包含一个事务日志文件,逻辑文件名为‘d:\testdb_log’, 磁盘文件名“testdb_log.ldf”,文件初始容量为5MB,最大容量为10MB,文件容量递增值为1MB;●对数据库作如下修改:(1)添加一个数据文件,逻辑文件“testdb2_data”,磁盘文件名“d;\testdb2_data.ndf”,文件初始容量为1MB,最大容量为6MB,文件容量递增值为1MB;(2)将事务日志文件的最大容量增加为15MB,递增值改为2MB;在testdb数据库下创建一个members(会员表),表结构如下:表1 表Members(会员表)2.2 实验步骤:方式一:使用SQL Server Management Studio创建和修改数据库1、创建数据库1. 单击“开始”,指向“程序”,指向“Microsoft SQL Server 2005”,然后单击“SQL Serv erManagement Studio”。
实验三数据查询(参考答案)实验目的□学会利用T_SQL语句中SELECT进行数据查询。
□掌握利用T_SQL 语句进行数据查询的基本方法。
实验内容有以下数据表表名:tudent属性列t_idt_nmt_e某t_birtht_coret_datet_fromt_dpidt_mnt使用T-SQL语句进行数据查询(注:学生班级为学号的前6位)1.显示所有学生的学号、姓名、性别、入学年份和班级(学号前6位)。
Selectt_id学号,t_nm姓名,t_e某性别,year(t_date)入学年份,left(t_id,6)班级Fromtudent2.显示前25%条学生记录信息。
Selecttop25percent某fromtudent3.查询tudent表中2022年及以后入学的学生信息。
Select某fromtudentwhereyear(t_date)>=20224.查询选修了1002号课程且成绩在60以下的学生学号。
Selecttudent.t_idfromtudentjoinlt_coueontudent.t_id=lt_coue. t_idWherec_id='1002'andcore<605.查询所有由三个字组成的“王”姓学生信息。
Select某fromtudentwheret_nmlike'王__'6.查询选修了1001号课程且成绩在60到80之间的学生选课信息。
Select某fromlt_couewherec_id='1001'andcorebetween60and807.查询所有张,王,李,赵姓的学生的学号、姓名、性别。
Selectt_id,t_nm,t_e某fromtudentwheret_nmlike'[张王李赵]%'8.查询陕西籍学生,将结果保存在新表t_han某i。
Select某intot_han某ifromtudentwheret_fromlike'%陕西%'9.查询选修了“数据结构”课程的学生学号、姓名及课程成绩。
数据库原理实验报告(3)实验三数据表的创建与管理实验南京晓庄学院《数据库原理与应⽤》课程实验报告实验三数据表的创建与管理实验所在院(系):数学与信息技术学院班级:学号::1.实验⽬的(1)理解SQL Server 2005常⽤数据类型和表结构的设计⽅法。
理解主键、外键含义,掌握建⽴各表相关属性间参照关系的⽅法。
(2)熟练掌握使⽤SQL Server Management Studio图形⼯具创建表,删除表,修改表结构,插⼊及更新数据的⽅法。
(3)熟练掌握使⽤Transact-SQL语句创建表,删除表,修改表结构,插⼊及更新数据的⽅法。
2.实验要求基本实验:(1)在实验⼆所创建的“TM”数据库中合理设计以下各表逻辑结构:学⽣信息(学号,,性别,籍贯,出⽣⽇期,民族,学院/系别号,班级号)课程信息(课程号,课程名称,课程所属模块,课程类别,学分,学时)学习信息(学号,课程号,考试成绩,平时成绩)院系信息(院系号,院系名称)要求确定各个字段的名称、类型、是否有默认值,是否主键等信息。
(2)依据你所设计的表结构,使⽤SQL Server Management Studio图形⼯具在“TM”数据库中创建学⽣信息表和课程信息表,并试验在图形界⾯中修改表结构,删除数据表,输⼊并更新数据的⽅法。
(3)依据你所设计表结构,使⽤Transact-SQL语句创建学习信息表和院系信息表,并试验使⽤T-SQL语句修改表结构,删除数据表,插⼊和更新数据的⽅法。
(4)找出已创建各表之间相关属性的参照关系,并在相关表中增加引⽤完整性约束。
(5)按要求完成实验报告。
扩展实验:(1)在“TM”数据库中补充设计以下各表结构:教师信息(教师号,,性别,出⽣⽇期,学历,学位,⼊职时间,职称,院系号)授课信息(教师号,课程号,学期)班级信息(班级号,班级名称,专业号)专业信息(专业号,专业名称,学制,学位)图书信息(图书号,书名,作者,,出版⽇期,册数,价格,分类)借书偏息(学号,图书号,借出时间,归还时间)奖励信息(学号,奖励类型,奖励⾦额)(2)设计并实现各表之间相关属性的参照关系。
实验三、四 创建表及输入数据及完整性约束本实验需要4学时。
一、实验目的要求学生熟练掌握和使用Transact-SQL、SQL Server企业管理器创建表、索引和修改表结构,并学会使用SQL Server 查询分析器接收Transact-SQL语句和进行结果分析。
学生熟练掌握使用 SQL、Transact-SQL和SQL Server企业管理器向数据库输入数据、修改数据和删除数据的操作。
二、实验内容1 创建表、确定表的主码和约束条件。
为主码建索引。
2 查看和修改表结构。
3 输入数据、修改数据和删除数据三、实验步骤(1)通过企业管理器,在建好的图书借阅数据库中建立图书、读者和借阅3个表,其结构为;图书(书号,类别,出版社,作者,书名,定价,作者).读者(编号,姓名,单位,性别,电话).借阅(书号,读者编号,借阅日期)要求为属性选择合适的数据类型,定义每个表的主码.是否允许空值和默认值等列级数据约束。
(2)在企业管理器中建立图书、读者和借阅3个表的表级约束.每个表的主码约束.借阅表与图书表间、借阅表与读者表之间的外码约束,要求按语义先确定外码约束表达式.再通过操作予以实现.实现借阅表的书号和读者编号的惟一性约束:实现读者性别只能是“男”或“女”的Check(检查)约束。
(3)通过企业管理器,在图书借阅数据库的图书、读者和借阅3个表中各输入10条记录。
要求记录不仅满足数据约束要求.还要有表间关联的记录。
(4)通过企业管理器实现对图书借阅数据库的图书、读者和借阅3个表中数据的插入。
删除和修改操作。
(5)通过企业管理器实现对学生选课库的数据增加、数据删除和数据修改操作、要求学生、课程和选课表中各有10条以上的记录。
四、实验方法1 新建表在 SQL Serve 2000的数据库中,文件夹是按数据库对象的类型建立的.文件夹名是该数据库对象名。
当在企业管理器中选择服务器和数据库文件夹,并打开已定义好的图书.读者数据库后,会发现它自动设置了关系图、表、视图、存储过程、用户、角色、规则、默认等文件夹。
ACCESS 实验数据库及表的操作一、实验目的1.掌握数据库的创建及其它简单操作2.熟练掌握数据表建立、数据表维护、数据表的操作二、实验内容与要求1.数据库的创建、打开、关闭2.数据表的创建:建立表结构、设置字段属性、建立表之间关系、数据的输入3.数据表维护:打开表、关闭表、调整表外观、修改表结构、编辑表内容4.数据表的操作:查找替换数据、排序记录、筛选记录三、实验步骤案例一:创建数据库1.创建空数据库要求:在移动盘上建立“\experiment\ACCESS\实验一”文件夹,并在其下建立“教学管理.accdb”数据库。
创建数据库文件操作步骤:图1-1创建教学管理数据库(1)在Access 2010启动窗口中,在中间窗格的上方,单击“空数据库”,在右侧窗格的文件名文本框中,给出一个默认的文件名“Database1.accdb”。
把它修改为“教学管理”如图1-1所示。
(2)单击按钮,在打开的“新建数据库”对话框中,选择数据库的保存位置,在“\ experiment\ACCESS\实验一”文件夹中,单击“确定”按钮,如图1-2所示。
(3)这时返回到access启动界面,显示将要创建的数据库的名称和保存位置,如果用户未提供文件扩展名,access将自动添加上。
(4)在右侧窗格下面,单击“创建”命令按钮,如图1-1所示。
(5)这时开始创建空白数据库,自动创建了一个名称为表1的数据表,并以数据表视图方式打开这个表1,如图1-3所示。
图1-2“文件新建数据库”对话框(6)这时光标将位于“添加新字段”列中的第一个空单元格中,现在就可以输入添加数据,或者从另一数据源粘贴数据。
图1-3表1的数据表视图2.使用模板创建Web数据库要求:利用模板创建“联系人Web数据库.accdb”数据库,保存在“\ experiment\ACCESS\实验一”文件夹中。
操作步骤:(1)启动Access。
(2)在启动窗口中的模板类别窗格中,双击样本模板,打开“可用模板”窗格,可以看到Access提供的12个可用模板分成两组。
XX大学实验报告课程名称计算机导论项目名称电子表格处理学院专业指导教师报告人学号实验时间提交时间一、实验目的与要求1.掌握Excel的基本操作;2.掌握相对地址、绝对地址、混合地址以及公式和函数应用;3.掌握数据清单(排序、筛选、分类汇总和数据透视表)技术;4.熟悉个人理财管理或贷款购房方案的设计与制作;5.学会自己提出问题,并得出解决问题的方法。
二、实验内容与方法1.了解并掌握关于Excel的基本操作,先学习大学计算机基础教程实验指导,再通过上机操作熟悉Excel的使用细节,最后掌握Excel的基本操作。
2. 了解并掌握Excel中的相对地址、绝对地址、混合地址以及公式和函数应用,先学习大学计算机基础教程实验指导,再通过上机操作熟悉使用细节。
3.了解并掌握Excel中的数据清单(排序、筛选、分类汇总和数据透视表)技术,学习大学计算机基础教程实验指导,再通过上机操作熟悉使用细节。
4. 进行个人理财管理或贷款购房方案的设计与制作,先学习大学计算机基础教程实验指导,再通过咨询老师或查阅图书馆有关书籍了解清楚设计制作的步骤,最后上机制作。
三、实验步骤与过程Ⅰ。
Excel的基本操作1.Excel的启动及其窗口①启动方式:执行“开始”菜单的“所有程序”→“Microsoft office”→“Microsoftoffice Excel 2003”命令,或双击桌面上的Excel快捷图标。
②Excel工作窗口组成:Excel的工作窗口由标题栏、工具栏、编辑栏、工作区、任务窗口、标签栏以及状态栏组成。
③单元格:工作区是一张表格,称为工作表,表中每行由数字1、2、3等行名标识,每列由A、B、C等列名标识,行与列交叉的方格称为单元格。
④单元格区域:若干个连续的组成矩形形状的单元格称为单元格区域。
⑤工作表与工作簿:窗口下面的标签栏上标有“Sheet1”、“Sheet2”、“Sheet3”,表示有三张工作表,具有下划线且白底的工作表称为当前工作表,点击工作表名称可选择工作表。
实验训练3答案数据删除操作实验训练3答案:数据删除操作
本文档将为您提供实验训练3中数据删除操作的答案。
问题1:如何删除数据库中的数据表?
要删除数据库中的数据表,可以使用以下SQL语句:
DROP TABLE 表名;
将上述SQL语句中的“表名”替换为您要删除的具体数据表的名称即可。
问题2:如何删除数据库中的特定数据行?
要删除数据库中的特定数据行,可以使用以下SQL语句:
DELETE FROM 表名 WHERE 条件;
将上述SQL语句中的“表名”替换为要删除数据行的数据表的名称,将“条件”替换为指定的删除条件。
问题3:如何删除数据库中的特定数据列?
要删除数据库中的特定数据列,可以使用以下SQL语句:
ALTER TABLE 表名 DROP 列名;
将上述SQL语句中的“表名”替换为要删除数据列的数据表的名称,将“列名”替换为要删除的具体列的名称。
问题4:如何清空数据库中的全部数据?
要清空数据库中的全部数据,可以使用以下SQL语句:
DELETE FROM 表名;
将上述SQL语句中的“表名”替换为要清空数据的具体数据表的名称。
以上是关于数据库中数据删除操作的答案。
如有任何进一步的疑问,请随时向我提问。
实验训练3 数据增删改操作作业一、实验内容与目的1.使用SQL语言完成数据定义、数据查询、更新,删除。
2. 利用SQL语言提供的INSERT语句、UPDATE语句和DELETE语句对所创建的表进行操作;3.利用SQL语句进行嵌套查询,多表查询。
二、实验原理或技术路线(也可使用原理图或流程图描述)1.建立新的数据表2.进行更新操作(插入数据)3.修改数据4.删除数据5.单表查询,连接查询,嵌套查询三、实验环境条件(包括所用仪器、材料、软件等)一台配备好的电脑,安装好数据库管理系统:Microsoft SQL Server 2008四、实验方法、步骤(至少列出程序代码或操作过程)1.运行数据库SQL sever 20082.新建数据库,并且创建新的表3.利用相关语句进行数据查询,更新,删除,修改五、实验过程原始记录( 测试数据、图表)1)创建供应商表 S,由以下属性组成:供应商号 SNO(CHAR 型),供应商姓名 SNAME(CHAR型),供应商状态 STATUS(CHAR 型),供应商所在城市 CITY(CHAR 型)。
CREATE TABLE S(SNO CHAR(3),SNAME CHAR(10),STATUS CHAR(2),CITY CHAR(10));2)创建零件表P,由以下属性组成:零件代码PNO(CHAR型),零件名PNAME(CHAR型),颜色COLOR(CHAR型),重量WEIGHT(INT型)。
CREATE TABLE P(PNO CHAR(3),PNAME CHAR(10),COLOR CHAR(4),WEIGHT INT);3)创建工程项目表J,由以下属性组成:工程项目代码JNO(CHAR型),工程项目名JNAME(CHAR 型),工程项目所在城市CITY(CHAR型)。
CREATE TABLE J(JNO CHAR(3),JNAME CHAR(10),CITY CHAR(10));4)创建供应情况表SPJ,由以下属性组成:供应商代码SNO(CHAR型),零件代码PNO (CHAR型),工程项目代码JNO(CHAR型),供应数量QTY(INT型)。
实验3 数据表的基本操作实验目的●掌握数据表的创建、修改和删除操作●学会使用企业管理器和Transact-SQL语句操作数据表背景知识在使用数据库的过程中,接触最多的就是数据库中的表。
表是数据存储的地方,是数据库中最重要的部分,管理好表也就管理好了数据库。
表是由行和列组成的。
创建表的过程主要就是定义表的列的过程。
表的列名在同一个表中具有唯一性,同一列的数据属于同一种数据类型。
除了用列名和数据类型来指定列的属性外,还可以定义其它属性:是否为空、默认值、标识符列、全局唯一标识符列等。
约束是SQL Server提供的自动保持数据库完整性的一种方法,定义了可输入表或表的单个列中的数据的限制条件。
在SQL Server中有5种约束:主关键字约束(Primary Key Constraint)、外关键字约束(Foreign Key Constraint)、惟一性约束(Unique Constraint)、检查约束(Check Constraint)和默认约束(Default Constraint)。
实验示例1. 创建数据表一、使用企业管理器创建数据表在myDB数据库中新建一个数据表myTable,演示各种数据类型列以及含有空值列、默认值列、标识符列、全局唯一标识符列属性的数据类型列。
注:如果没有myDB数据库,就参考实验2创建一个myDB数据库。
在企业管理器中,展开数据库“myDB”节点,右键单击“表”对象,从弹出的快捷菜单中选择“新建表”命令,如图3-1所示,就会出现新建表窗口,在新建表窗口中可以定义列名称、列定义、长度、精度、小数位数、是否允许为空、默认值、标识符列等。
图3-1 选择“新建表”命令下图定义一个整型列ColInt,该列不能为空,默认值为0,如图3-2所示。
每当在表中为该列插入带空值的行时,显示该列的默认值。
图3-2 定义整型列ColInt下图定义一个日期型列ColDateTime,该列不能为空,且默认值为函数getdate(),如图3-3所示。
图3-3 定义日期型列ColDateTime下图定义一个标识符属性列ColInd,其初值为1,增量也为1,如图3-4所示。
注意标识符列必须以decimal、int、numeric、smallint、bigint 或tinyint 数据类型定义。
在定义标识符列时,必须指定种子和增量值(其默认值均为1)。
图3-4 定义标识符列ColInd下图定义一个全局唯一标识符属性列ColRow,如图3-5所示。
注意一个表最多只能有一列定义为是RowGuid列,且该列必须定义为uniqueidentifier数据类型。
如果应用程序需要生成在整个数据库或世界各地所有网络计算机的全部数据库中均为唯一的标识符列,使用全局唯一标识符列属性。
图3-5 定义全局唯一标识符列ColRow按照类似的方法,设计好数据表后,单击工具栏上的“保存”按钮,由于是新建数据库表,弹出“选择名称”对话框,如图3-6所示。
输入表名“myTable”,然后按“确定”,即可保存。
这样数据表myTable就创建好了。
图3-6 设置数据表名在企业管理器中,可以生成指定数据表的Transact-SQL语句,以便了学习Transact-SQL语言。
在企业管理器中,右键单击myTable表,在弹出的快捷菜单中选择“生成SQL脚本”命令,如图3-7所示。
图3-7 选择“生成SQL脚本”命令弹出“生成SQL脚本”对话框,如图3-8所示。
图3-8 “生成SQL脚本”对话框按下“预览”按钮,自动生成了数据表myTable的SQL语句,如图3-9所示。
图3-9 生成SQL脚本预览二、使用Transact-SQL语句创建数据表例如:利用Transact-SQL语句创建上面用企业管理器创建的数据表,但表名为myTable2。
在查询分析器中输入SQL命令,如图3-10所示。
图3-10 使用Transact-SQL语句创建数据表另外,可以将查询分析器中的内容保存到一个SQL文件,便于以后使用。
单击工具栏“保存”按钮,如图3-11所示。
图3-11 保存SQL语句弹出“保存查询”对话框,在该对话框中指定文件名路径及文件名,如图3-12所示。
图3-12 指定文件路径和文件名按下“保存”按钮,即可保存当前内容到一个指定的SQL文件中。
例如:使用Transact-SQL语句在数据库DBS中创建学生成绩管理系统数据表,包括三个数据表:课程数据表Course、学生数据表Student、学生成绩数据表SC。
具体的SQL命令如图3-13所示。
图3-13 使用Transact-SQL语句创建数据表注:上面这个建立学生成绩管理系统的命令集可以保存到一个SQL文件中(如:CreateTable.sql),便于以后使用。
2. 创建带约束的数据表一、主关键字约束主关键字约束指定表的一列或几列的组合的值在表中具有惟一性,即能惟一地指定一行记录。
每个表中只能有一个主关键字约束,也不允许指定主关键字列有NULL属性。
1.使用企业管理器指定主关键字约束在企业管理器中,用鼠标右键单击要操作的数据表,从弹出的快捷菜单中选择“设计表”命令,弹出“设计表”对话框。
在该对话框中,选择要设置为主键的字段(如果需要选定多个字段,在按住Ctrl 键的同时,用鼠标单击每个要选的字段),然后用鼠标右键单击选中的字段,从弹出的快捷菜单中选择“设置主键”命令,或者单击工具栏上的“设置主键”按钮。
例如:设置Student数据表的Sno为主关键字约束。
具体操作如图3-14所示。
图3-14 指定单个字段为主关键字例如:设置SC数据表的Sno和Cno为主关键字约束。
具体操作如图3-15所示。
图3-15 指定多个字段为主关键字2.使用Transact-SQL语句指定主关键字约束使用Transact-SQL语句设置主关键字约束的命令是CONSTRAINT constraint_name PRIMARY KEY。
图3-16演示了利用Transact-SQL语句来设置单个字段或多个字段为主关键字约束。
图3-16 使用Transact-SQL语句指定主关键字约束二、外关键字约束外关键字约束定义了表之间的关系,当一个表中的一个列或多个列的组合和其它表中的主关键字定义相同时,就可以将这些列或列的组合定义为外关键字,并设定它适合哪个表中哪些列相关联。
外关键字约束的作用还体现在,当向含有外关键字的表插入数据时,如果与之相关联的表的列中无与插入的外关键字列值相同的值时,系统会拒绝插入数据。
1.使用企业管理器指定外关键字约束例如:设置SC数据表的Sno是一个外关键字,参考Student表中的Sno;设置SC数据表的Cno是一个外关键字,参考Course表中的Cno。
在企业管理器中,打开数据表SC的数据结构,如图3-17所示。
图3-17 选择“设计表”命令数据表SC的数据结构如图3-18所示,单击工具栏上的“管理关系”按钮。
图3-18 SC表的结构弹出“属性”对话框,选择“关系”选项卡,按照图3-19所示方法设置SC数据表的Sno是一个外关键字,参考Student表中的Sno。
图3-19 设置SC表的外关键字Sno同样的方法,图3-20表示设置SC数据表的Cno是一个外关键字,参考Course表中的Cno。
图3-20 设置SC表的外关键字Cno2.使用Transact-SQL语句指定外关键字约束例如:利用Transact-SQL语句设置SC数据表的Sno是一个外关键字,参考Student表中的Sno;设置SC数据表的Cno是一个外关键字,参考Course表中的Cno。
具体的SQL命令如图3-21所示。
图3-21 使用Transact-SQL语句指定外关键字约束三、唯一性约束可使用UNIQUE 约束确保在非主键列或允许为空值的列中不输入重复值。
尽管UNIQUE 约束和PRIMARY KEY约束都强制唯一性,但对于非主键列或允许为空值的列应使用UNIQUE 约束而不是PRIMARY KEY 约束。
1.使用企业管理器指定唯一性约束在企业管理器中,用鼠标右键单击要操作的数据表,从弹出的快捷菜单中选择“设计表”命令,弹出“设计表”对话框。
单击工具栏上的“管理索引/键”按钮,弹出“属性”对话框,选择“索引/键”选项卡,单击该选项卡中的“新建”按钮,在“列名”栏中选择要将唯一约束附加的列,然后选中复选框“创建UNIQUE”,选择“约束”选项,单击“关闭”按钮即可。
例如:设置Student数据表的Sname是一个满足唯一性约束的列。
具体操作如图3-22所示。
图3-22 指定唯一性约束2.使用Transact-SQL语句指定唯一性约束例如:使用Transact-SQL语句设置Student数据表的Sname是一个满足唯一性约束的列。
具体的SQL 命令如图3-23所示。
图3-23 使用Transact-SQL语句指定唯一性约束四、检查约束检查约束CHECK对输入列或整个表中的值设置检查条件,以限制输入值,保证数据库的数据完整性。
可以对每个列设置检查条件。
1.使用企业管理器指定检查约束在企业管理器中,用鼠标右键单击要操作的数据表,从弹出的快捷菜单中选择“设计表”命令,弹出“设计表”对话框。
单击工具栏上的“管理约束”按钮,弹出“属性”对话框,选择“CHECK约束”选项卡,单击该选项卡中的“新建”按钮,在“约束表达式”文本框中输入检查约束的表达式,输入完毕后,在“约束名”文本框中输入约束的名称,然后单击“关闭”按钮即可。
例如:设置Student数据表中的Sage的值必须在0-100之间。
具体操作如图3-24所示。
图3-24 指定检查约束2.使用Transact-SQL语句指定检查约束例如:使用Transact-SQL语句设置Student数据表中的Sage的值必须在0-100之间,Ssex的值只能是“男”或“女”。
具体的SQL命令如图3-25所示。
图3-25 使用Transact-SQL语句指定检查约束五、默认约束默认约束DEFAULT通过定义列的缺省值或使用数据库的缺省值对象绑定表的列,来指定列的缺省值。
1.使用企业管理器指定默认约束在企业管理器中,用鼠标右键单击要操作的数据表,从弹出的快捷菜单中选择“设计表”命令,弹出“设计表”对话框。
选定要设置默认约束的字段后,在默认值栏中输入该字段的默认值,即可创建默认约束。
如图3-2或3-3所示。
2.使用Transact-SQL语句指定默认约束方法1:在CREATE TABLE中使用DEFAULT关键字创建默认定义,将常量表达式指派为列的默认值。
这是首选的标准方法,也是定义默认值的更简明的方法。
方法2:使用CREATE DEFAULT语句创建默认对象,然后使用sp_binddefault系统存储过程将它绑定到列上。