项目4 数据表创建与管理_第1页
项目4 数据表创建与管理_第2页
项目4 数据表创建与管理_第3页
项目4 数据表创建与管理_第4页
项目4 数据表创建与管理_第5页
已阅读5页,还剩75页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《数据库应用技术》项目4

数据表创建与管理主讲老师:XXX时间:XX年XX月目录CONTENTS4.1创建数据表4.2

使用SSMS方式管理数据库表4.3使用T-SQL语句管理数据库表4.4使用SSMS方式维护数据4.5使用T-SQL语句维护数据数据表创建与管理4.1.1数据表的概念4.1.2数据类型4.1.2数据类型4.1.4数据完整性约束概述4.1.5创建数据表4.1.6字段的约束4.14.1创建数据表数据表是数据库的基本单位,它是一个二维表,由行和列组成。每行代表唯一的一条记录,是组织数据的单位,通常称为表数据。学生信息表如表4-1所示,每一行代表一名学生,各列分别表示学生的详细资料,如学号、姓名、性别、系名、出生日期、民族等。每列代表记录中的一个域,用来描述数据的属性,通常称为表结构,如姓名等。每个字段可以理解为字段变量,可以定义数据类型、大小等信息。4.1.1数据表的概念学号姓名性别出生日期入学总分20220101林小玲女2003-02-1445020210102张威男2003-05-2032920210103曹健平男2003-09-2446820210104陈爽女2003-08-1148920210105李炫霖男2003-11-14421表4-1

学生信息表4.1创建数据表SQLServer是一个关系数据库,它使用由行和列组成的二维表来表示实体及其联系。SQLServer中的每个表都有一个名字,以标识该表。例如,表4-1的名称是学生信息表。下面说明一些与表有关的名词。(1)表结构:每个数据库包含了若干个表。每个表都具有一定的结构,称为“表型”。所谓表型,是指组成表的名称及数据类型,也就是日常表格的“栏目信息”。(2)记录:每个表包含了若干行数据,它们是表的“值”,表中的一行称为一个记录,因此,表是记录的有限集合。(3)字段:每个记录由若干个数据项构成,构成记录的数据项称为字段。(4)关键字:在学生信息表中,要是不加以限制,那么每个记录的学号、姓名、性别、出生日期和入学总分这5个字段的值都有可能相同,但是学号字段的值对表中所有记录来说一定不同,学号是关键字。也就是说,可以通过“学号”字段将表中的不同记录区分开来。4.1.1数据表的概念4.1创建数据表在一张表里,同一列数据的数据类型都是相同的。例如,“姓名”字段的数据类型是字符串、“年龄”字段的数据类型是整数等。在创建表时,必须为每个字段确定数据类型。SQLServer2022提供了一套完整的数据类型集,此外,还允许用户自定义数据类型。表4-2列出了SQLServer2022系统常用的数据类型4.1.2数据类型表4-2SQLServer2022常用数据类型4.1创建数据表本书使用的数据库为项目3中创建的教务管理数据库JWGL,其中包含专业表、班级表、教师表、课程信息表、学生表、开课任务表及学生成绩表。4.1.3教务管理数据库表定义1.专业表(1)表名:specialty。(2)功能:存放专业的基本信息。表4-3

专业表4.1创建数据表4.1.3教务管理数据库表定义2.班级表(1)表名:class。(2)功能:存放班级的基本信息。表4-4班级表4.1创建数据表4.1.3教务管理数据库表定义3.教师表(1)表名:teacher。(2)功能:存放教师的基本信息。表4-5

教师表4.1创建数据表4.1.3教务管理数据库表定义4.课程信息表(1)表名:course。(2)功能:存放每个专业各个学期计划开设的课程信息。表4-6课程信息表4.1创建数据表4.1.3教务管理数据库表定义5.学生表(1)表名:student。(2)功能:存放学生的基本信息。表4-7学生表4.1创建数据表4.1.3教务管理数据库表定义6.开课任务表(1)表名:task。(2)功能:存放每个学期各个班级所开的课程以及授课教师等信息。表4-8开课任务表4.1创建数据表4.1.3教务管理数据库表定义7.学生成绩表(1)表名:score。(2)功能:存放学生课程的学习成绩信息。表4-9学生成绩表4.1创建数据表4.1.4数据完整性约束概述1.实体完整性约束实体完整性约束是表中记录与记录之的约束,在SQLServer数据库表中由“主键和唯一键”字段的定义来实现。(1)主键约束:是指将字段设置为主键。通过主键约束来实现记录的唯一标识。主键约束有非空和唯一键的特点。(2)唯一键约束:是指将字段设置为唯一键来约束字段不允许有重复的数据出现。4.1创建数据表4.1.4数据完整性约束概述3.参照完整性约束参照完整性约束是表与表之间的关联约束,在SQLServer数据库表中由外键字段的设置来实现。字段设置为外键后,字段的取值范围被限制在相关联的主键的现存记录的数据范围之内。外键约束还可以进一步定义“级联”规则:(1)删除规则:如果外键设置了删除规则,当主键表中删除某一记录时,则外键表中与主键表被删记录相关联的所有记录将自动删除。(2)更新规则:如果外键设置了更新规则,当主键表的某一记录的主键值被修改时,则外键表中与主键表被修改记录相关联的所有记录的外键字段的值将自动修改。4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表创建数据库表时,需要在“表设计器”中输入各个字段的描述内容、创建各种约束关系、指定表保存的名称等内容。【例4-1】

根据表4-3给定的参数创建专业表“specialty”。表4-3

专业表4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表(1)打开“表设计器”窗格。展开数据库“JWGL”节点→右击“表”节点→单击快捷菜单中的“新建表”菜单命令,打开“表设计器”窗格,该窗格以表格的形式提供字段描述信息的编辑环境,它由“列名、数据类型、允许Null值”三列组成,每行描述一个字段的结构信息,如图4-1所示。图4-1表设计器4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表(2)输入字段描述信息。在第一行的“列名”列输入“specialty_id”,在“数据类型”列选择“varchar(50)”,将长度由“50”修改为“4”;在第二行的“列名”列输入“专业名称”,在“数据类型”列选择“varchar(50)”,将长度由“50”修改为“64”。输入内容如图4-2所示。图4-2创建专业表4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表(3)设置字段的约束①设置“非空”约束:在表设计器窗格,将两个字段的“允许Null值”列的复选钮全部不选择(即把勾去掉),如图4-2所示。②设置主键约束:在表设计器窗格,右击“specialty_id”所在行,单击快捷菜单的“设置主键”菜单命令,此时,该行的左边出现一个“钥匙”的主键标志,如图4-3所示示。图4-3设置主键窗口4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表(3)设置字段的约束③设置唯一键约束:为“专业编号”、“专业名称”字段设置“唯一键”约束,操作过程如下:在表设计器窗格右击鼠标,单击快捷菜单的“索引/键”菜单命令,显示“索引/键”对话框窗口,由于“专业编号”已经设置为主键,因此其自动设置“唯一键”约束。在“标识”项,单击“(名称)”项右边的编辑框,输入“唯一键”的名称,将原值修改为“PK_zybh”。4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表(3)设置字段的约束③设置唯一键约束:为“专业编号”、“专业名称”字段设置“唯一键”约束,操作过程如下:然后单击“添加”按钮,在右边的列表框的“(常规)”项中单击“类型”项,此时,在其右边出现组合列表框,在组合列表框中选择“唯一键”;单击“列”项,在其右边出现“…”按钮,单击“…”按钮,弹出“索引列”对话框窗口,如图4-4所示。图4-4索引列4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表(3)设置字段的约束③设置唯一键约束:为“专业编号”、“专业名称”字段设置“唯一键”约束,操作过程如下:在图4-4窗口单击“列名”组合列表框,选择“专业名称”,单击“确定”按钮退出“索引列”窗口,返回“索引/键”窗口;在“索引/键”窗口的“标识”项,单击“(名称)”项右边的编辑框,输入“唯一键”的名称,将原值修改为“uq_zymc”。至此,“专业名称”的“唯一键”约束设置完毕,内容设置如图4-5所示。图4-5专业名称-唯一键设置4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表(4)保存创建的表。单击“标准”工具栏的“保存”按钮,弹出“选择名称”窗口,如图4-6所示,在“输入表名称”编辑框中输入表名“specialty”,单击“确定”按钮完成专业表创建的所有操作。图4-6保存specialty表4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表【例4-2】根据表4-4给定的参数创建班级表“class”。创建过程与【例4-1】基本相同,操作完成后,以“class”名称保存,这时,表设计器窗格的内容如图4-7所示。图4-7创建class表4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表

下面重点介绍“外键约束”的设置方法,操作过程如下:(1)进入“外键关系”窗口。在表设计器窗格右击鼠标,单击快捷菜单的“关系”菜单命令,显示“外键关系”对话框窗口,单击“添加”按钮,打开“外键关系”窗口,如图4-8所示。图4-8

外键关系4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表

下面重点介绍“外键约束”的设置方法,操作过程如下:(2)

定义“外键”。展开“(常规)”项→展开“表和规范”项,在其右侧显示“…”按钮,单击该按钮显示“表和列”对话框窗口,如图4-9所示。图4-9关系设置4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表

下面重点介绍“外键约束”的设置方法,操作过程如下:(2)

定义“外键”。①在“关系名”编辑框输入一个自定义的外键名称“fk_cl_sp”。②单击“主键表”下面的列表框选择“specialty”表名,单击其下方的单元格,单元格变成下拉列表框,在下拉列表框中选择“specialty_id”字段;③在“外键表”的列表框显示有“class”表名,单击其下方的单元格,单元格变成下拉列表框,在下拉列表框中选择“specialty_id”字段。上述三项设置完后,单击“确定”按钮,返回图4-8的“外键关系”窗口。4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表

下面重点介绍“外键约束”的设置方法,操作过程如下:(3)

设置级联规则。在图4-8所示的“外键关系”窗口中,在左边窗格中选中要设置级联规则的关系名称,例如,选择刚刚建立的外键名称“fk_cl_sp”;这时,在右边的列表框中,展开“INSERT和UPDATE规范”项,单击“更新规则”项,在其右边显示出下拉列表框按钮,单击该按钮,从列表中选择“级联”;单击“删除规则”项,在其右边显示出下拉列表框按钮,单击该按钮,从列表中选择“级联”;单击“强制外健约束”项,在其右边显示出下拉列表框按钮,单击该按钮,从列表中选择“是”。设置后的内容如图4-10所示。图4-10更新与删除规则设置4.1创建数据表4.1.5创建数据表1.使用SSMS创建数据表

下面重点介绍“外键约束”的设置方法,操作过程如下:(4)

在“外键关系”窗口单击“关闭”按钮,完成外键设置操作,返回“表设计器”窗格;在“表设计器”窗格单击“标准”工具栏的“保存”按钮,结束表的创建。4.1创建数据表4.1.5创建数据表2.使用T-SQL创建数据表

T-SQL使用“CREATETABLE”语句来创建数据库表。“CREATETABLE”语句的功能非常强大,一条语句就可以描述表结构的所有内容。常用的语法格式如下。语法格式:4.1创建数据表4.1.5创建数据表2.使用T-SQL创建数据表使用说明:(1)创建表的数据库必须是正在使用的数据库。(2)在语法格式中,括号内字段的描述如字段名、数据类型等各项内容之间用空格分开;当一个表多于一个字段时,字段之间用“,”逗号分开。(3)字段名:定义字段的名称。例如,specialty_id、专业名称等。(4)数据类型:给出字段的数据类型。例如,int、date、varchar等。4.1创建数据表4.1.5创建数据表2.使用T-SQL创建数据表使用说明:(5)长度:定义字段数据的最大长度。例如,专业名称的最大数据长度设置为64。有些字段如“int”等字段使用固定长度的字节数来存放数据,所以不用指定长度。(6)小数:如果字段用于保存非整型的数值,则本项定义小数所占的位数。(7)字段约束:用于设置字段数据的完整性约束。例如,非空、默认值、限制数据范围、外键等。4.1创建数据表4.1.6字段的约束1.定义空或非空(1)格式:{[NULL|NOTNULL]}.(2)说明:非空选“NOTNULL”,允许空则选取“NULL”或省略。(3)例如:某字段不能为空,则约束设置为:2.定义自增量键(1)格式:[IDENTITY(<初始值>,<步长值>)](2)说明:将字段设置为由系统控制的自增量字段。“初始值”是系统生成的第一个值;系统生成下一个值的方法:取上一次生成的值加上一个“步长值”。(3)例如:设第一条记录字段的值取“1”,第二条记录取“3”,则约束设置为:4.1创建数据表4.1.6字段的约束3.定义主键约束(1)格式:[CONSTRAINT<约束名>]PRIMARYKEY(2)说明:用于将字段设置为主键。当省略[CONSTRAINT<约束名>]时,由SQLServer系统自动给出约束名称,下同。(3)如:将某字段设置为主键,主键标识名称为“pk_specialty_id”,则约束设置为:4.定义唯一键约束(1)格式:[CONSTRAINT<约束名>]UNIQUE(2)说明:用于将字段设置为唯一键。(3)例如:将某字段设置为唯一键,当唯一键标识名称为“uq_zybh”时,约束设置为:4.1创建数据表4.1.6字段的约束5.定义外键约束(1)格式:[CONSTRAINT<约束名>]FOREIGNKEYREFERENCES<引用表名>(<引用字段名>)[ONDELETECASCADE][ONUPDATECASCADE](2)说明:用于将字段设置为外键。“ONDELETECASCADE”选项用于定义级联的“删除规则”,“ONUPDATECASCADE”选项用于定义级联的“更新规则”。(3)例如:设置某个字段为外键,它关联“specialty”专业表的主键字段“specialty_id”,且不设置级联规则,则该字段的外键约束设置为:4.1创建数据表4.1.6字段的约束6.定义检查约束(1)格式:[CONSTRAINT<约束名>]CHECK(<检查表达式>)(2)说明:用于设置字段的取值范围。“检查表达式”是一个关系或逻辑表达式。(3)例如:设置“年龄”字段的取值范围为“1到200的整数”,则约束设置为:7.定义检查约束(1)格式:[CONSTRAINT<约束名>]DEFAULT<默认值>(2)说明:为字段设置“默认值”。(3)例如:为“性别”字段设置默认值为“男”,则约束设置为:4.1创建数据表4.1.6字段的约束案例操作:【例4-4】根据表4-4给定的参数使用T-SQL语句创建班级表“class_t”。在SSMS管理器的“标准”工具栏中,单击“新建查询”按钮,打开“SQL编辑器”窗格;将“JWGL”数据库设置为当前使用的数据库;在“SQL编辑器”窗格输入如下T-SQL语句实现代码:4.1创建数据表4.1.6字段的约束单击“SQL编辑器”工具栏中的“执行”按钮执行T-SQL语句,完成class表的创建,如图4-11所示。图4-11使用T_SQL语句创建class表4.1创建数据表4.1.6字段的约束【例4-5】根据表4-5给定的参数使用T-SQL语句创建教师表“teacher”。实现代码如下:【例4-6】根据表4-6给定的参数使用T-SQL语句创建课程信息表“course”。实现代码如下:4.1创建数据表4.1.6字段的约束【例4-7】根据表4-7给定的参数使用T-SQL语句创建学生表“student”。实现代码如下:4.1创建数据表4.1.6字段的约束【例4-8】根据表4-8给定的参数使用T-SQL语句创建开课任务表“task”。实现代码如下:4.1创建数据表4.1.6字段的约束【例4-9】根据表4-9给定的参数使用T-SQL语句创建学生成绩表“score”。实现代码如下:使用SSMS方式管理数据库表4.2.1修改数据库表4.2.2重命名表名4.2.3删除数据库表4.24.2使用SSMS方式管理数据库表4.2.1修改数据库表1.修改字段属性、增删表字段【例4-10】把“class”班级表的“班级名称”字段的长度“64”修改为“32”;给表增加一个“人数”字段,其属性参数为“字段名:人数;数据类型:INT”。操作过程如下:(1)在“表设计器”窗格中打开“class”班级表:展开“JWGL”数据库→展开“表”节点→右击要修改的“class”表→单击快捷菜单中的“设计”菜单命令,打开“表设计器”窗格,如图4-12所示。图4-124.2使用SSMS方式管理数据库表4.2.1修改数据库表1.修改字段属性、增删表字段(2)修改“班级名称”字段的总长度:单击“班级名称”字段的数据类型单元格,将“64”修改为“32”。(3)增加“人数”字段:在最后的空行里,在“列名”列单元格输入“人数”;在“数据类型”列单元格选择“int”,修改后的内容如图4-13所示。(4)保存退出:单击工具栏的“保存”按钮,结束修改。右击“SQL编辑器”的标题,在快捷菜单中单击“关闭”按钮,关闭“SQL编辑器”。图4-132.修改约束(修改表的约束内容的操作过程与创建表时设置约束的操作过程一样。4.2使用SSMS方式管理数据库表4.2.2重命名表名重命名表名可能会破坏表间关联关系或使相关的存储过程等内容失效,因此,要尽量避免修改表名。【例4-11】将“JWGL”数据库的“class_t”班级表重命名为“class_old”。操作过程如下:展开数据库“JWGL”节点→展开“表”节点→右击“class_t”表名→单击快捷菜单的“重命名”菜单命令→“class_t”的表名称变成编辑框→输入新的(或修改)表名称为“class_old”→按回车键,或在窗口的其他位置单击鼠标即可结束修改。4.2使用SSMS方式管理数据库表4.2.3删除数据库表当表没有存在的必要时,可以把它从数据库中删除。删除表之前要检查表的主键是否被另一张表的外键关联,如果被关联,则该表不允许删除,否则,要先删除外键表。【例4-12】将“class_old”班级表删除。操作过程如下:展开数据库“JWGL”节点→展开“表”节点→右击“class_old”表名→单击快捷菜单的“删除”菜单命令→弹出“删除对象”窗口→单击该窗口的“确定”按钮,因为“class_old”表的主键还没有被其他表的外键关联,所以,删除操作成功。使用T-SQL语句管理数据库表4.3.1修改数据库表4.3.2重命名表名4.3.3删除数据库表4.34.3使用T-SQL语句管理数据库表4.3.1修改数据库表1.增加字段语法格式:使用说明:当一次增加多个字段时,字段间的描述使用“,”逗号分开。案例操作:【例4-13】为“teacher”教师表增加两个字段,一是“职称”字段:“字段名:职称;数据类型:VARCHAR、数据长度:12、默认值:助教”;二是“年龄”字段:“字段名:年龄;数据类型:INT”。实现代码如下:4.3使用T-SQL语句管理数据库表4.3.1修改数据库表2.删除字段语法格式:使用说明:被删除的字段不能是主键、外键、索引等有约束的字段,否则,应先删除约束关系,然后再删除该字段。一条语句可以同时删除一个或多个字段。案例操作:【例4-14】把“teacher”教师表新增加的“年龄”字段删除。实现代码如下:4.3使用T-SQL语句管理数据库表4.3.1修改数据库表3.修改字段属性语法格式:使用说明:如果修改的字段原来允许空,现在修改为非空时,则表中不能有该字段为空的记录,否则操作失败。使用ALTERTABLE语句不能直接修改字段的名称案例操作:【例4-15】把“teacher”教师表中“教师姓名”字段的长度修改为“16”。实现代码如下:4.3使用T-SQL语句管理数据库表4.3.2重命名表名T-SQL语句重命名表名时,可调用存储过程“sp_rename”来实现。语句格式如下:【例4-16】把“class”表改名为“class_rename”。4.3使用T-SQL语句管理数据库表4.3.3重命名表名使用T-SQl语句删除数据库表的最大好处就是一次可以删除多个表,方便快捷。语法格式:使用说明:如果表中的主键被另一表的外键关联,必须先删除表间的关联关系,然后才能把表删除,否则,删除操作失败。案例操作:【例4-17】把“JWGL”数据库中的“class_rename”表删除。实现代码如下:使用SSMS方式维护数据4.4.1插入记录4.4.2修改数据4.4.2修改数据4.44.4使用SSMS方式维护数据4.4.1插入记录1.向没有外键字段的表插入记录【例4-18】向“JWGL”数据库的“specialty”专业表插入表4-10所示的全部记录。表4-10

插入专业表记录4.4使用SSMS方式维护数据4.4.1插入记录1.向没有外键字段的表插入记录操作过程如下:(1)进入“查询设计器”:在SSMS管理器的“对象资源管理器”中,展开数据库“JWGL”节点→展开“表”节点→右击“specialty”表名→单击快捷菜单的“编辑前200行”菜单命令→在SSMS的右边区域显示“查询设计器”窗格。4.4使用SSMS方式维护数据4.4.1插入记录1.向没有外键字段的表插入记录操作过程如下:(2)输入记录:单击“专业编号”单元格,输入“0101”;单击“专业名称”单元格,输入“计算机应用技术”。用同样的方法,输入其他记录,前四行输入后窗格中的内容如图4-14所示,以同样的方法将后面的记录输入。(3)保存退出:右击“查询设计器”窗格的标题,单击快捷菜单中的“关闭”按钮,结束插入操作。图4-14

向没有外键字段的表插入记录4.4使用SSMS方式维护数据4.4.1插入记录2.向有外键字段的表插入记录【例4-19】把表4-11的记录插入到“class”班级表。表4-11插入班级表记录4.4使用SSMS方式维护数据4.4.1插入记录2.向有外键字段的表插入记录〖案例分析〗先要弄清楚表4-11最后一列“specialty_id”数据的来源:因为“计算机23-1、计算机23-2”两个班是“计算机应用技术”专业的班级,从图4-14专业表的记录中可查知,“计算机应用技术”专业的主键“specialty_id”字段值为“0101”,所以,在“class”班级表中,外键“specialty_id”字段的值取“0101”;同理,“人工智能23-1”班是“人工智能技术应用”专业的班级,该专业在“specialty”专业表中的主键“specialty_id”字段值为“0102”,所以,在“class”班级表中,外键“specialty_id”字段的值取“0102”。操作结果如图4-15所示。图4-15

向有外键字段的表插入记录4.4使用SSMS方式维护数据4.4.2修改数据【例4-20】把“class”班级表的“人工智能23-1”班级名称修改为“人工智能技术应用23-1”。操作过程如下:(1)在“查询设计器”中打开需要修改数据的表:在SSMS管理器的“对象资源管理器”中,展开数据库“JWGL”节点→展开“表”节点→右击“class”班级表表名→单击快捷菜单的“编辑前200行”菜单命令。(2)修改表中的记录数据:将“人工智能23-1”单元格的内容修改为“人工智能技术应用23-1”,结果如图4-16所示。

图4-16

修改记录4.4使用SSMS方式维护数据4.4.3删除记录【例4-21】将“specialty”专业表中的“铁路物流管理”专业删除。操作过程如下:(1)在“查询设计器”中打开需要删除记录的表:在SSMS管理器的“对象资源管理器”中,展开数据库“JWGL”节点→展开“表”节点→右击“specialty”专业表的表名→单击快捷菜单的“编辑前200行”菜单命令→在“查询设计器”窗格中显示表中的记录。(2)删除记录:鼠标指向“铁路物流管理”专业所在行左边的空白列→右击鼠标显示快捷菜单,如图4-17所示,单击“删除”菜单命令,在弹出的“确认删除”对话框中单击“是”按钮,该行即被删除。

图4-17删除记录使用T-SQL语句维护数据4.5.1INSERT语句插入记录4.5.2UPDATE语句修改数据4.5.3DELETE语句删除记录4.54.5使用T-SQL语句维护数据4.5.1INSERT语句插入记录语法格式:使用说明:(1)INTO关键字。INTO关键字在语句中可以省略,但为了语句的语意表达更清晰,建议写上。(2)<字段名>[,…n]。该处列出表中的部分或所有字段名,多个时用“,”号分开,省略时代表全部字段。(3)<表达式>[,…n]。表达式的个数要与前面列出的字段个数相同,多个时用“,”号分开。表达式的值的数据类型要与前面列出的对应位置的字段的数据类型一一对应。4.5使用T-SQL语句维护数据4.5.1INSERT语句插入记录1.单行记录插入:所有字段都提供数据所有字段都提供数据是指在插入语句中每个字段都要指定具体的插入数据。【例4-22】向“specialty”专业表插入一条专业记录:专业编号为“0403”,专业名称为“集装箱管理”。实现代码如下:4.5使用T-SQL语句维护数据4.5.1INSERT语句插入记录2.单行记录插入:部分字段提供数据【例4-23】向“student”学生表插入表4-12中“李表华”同学的记录。表4-12

插入学生表记录〖案例分析〗已设置了默认值和允许为空的字段,在插入记录时可以暂时不填入数据,因此,插入语句可以只指定部分字段的数据,在这种情况下,字段名列表部分不允许省略。本案例中,第一行“出生日期”没有提供数据,因为该字段允许为空,所以,该记录能成功地插入到表中。4.5使用T-SQL语句维护数据4.5.1INSERT语句插入记录2.单行记录插入:部分字段提供数据代码实现如下:其中,“convert()”是将字符串数据类型的数据转换成日期类型的函数。语句执行后,“出生日期”字段的值为“NULL”空。4.5使用T-SQL语句维护数据4.5.1INSERT语句插入记录3.多行记录插入:通过已知数据插入多行记录INSERT语句一次可以插入多行记录,提高了记录插入的效率。根据语句的语法格式可知,一次插入多个记录时,语句中提供记录数据的括号之间使用“,”逗号分开即可。【例4-24】向“student”学生表插入表4-12中“陈小东、李档赤”两位同学的记录。代码实现如下:4.5使用T-SQL语句维护数据4.5.2UPDATE语句修改数据

语法格式:

使用说明:

语句中,SET关键字后面的式子“<字段名>=<表达式>”就是修改项,即用“表达式”的值修改“=”赋值号左边指定的字段的值。如果同时修改多个字段,则用“,”逗号分开;WHERE关键字后面指定的是修改“条件”,当不指定“WHERE<条件表达式>”选项时,所有记录都要修改,否则,只修改满足条件的记录。有关“条件表达式”的知识在下一章的“WHERE子句”中有详细介绍。4.5使用T-SQL语句维护数据4.5.2UPDATE语句修改数据1.修改所有记录的字段数据【例4-25】把“class”班级表的所有记录的“人数”数据修改为48。〖案例分析〗没有指定修改条件,所以,所有记录的“人数”字段都要修改为48。实现的代码如下:4.5使用T-SQL语句维护数据4.5.2UPDATE语句修改数据2.修改满足条件的记录的字段数据【例4-26】把“class”班级表的“计算机23-1”班的“班级名称”修改为“计应23-1”。〖案例分析〗已知条件是班名“计算机23-1”,所以,修改的限制条件是“班级名称='计算机23-1'”;修改的内容:班级名称='计应23-1'。实现的代码如下:4.5使用T-SQL语句维护数据4.5.2UPDATE语句修改数据3.同时修改多个字段的数据上面两个案例只修改一个字段的数据,其实,在修改语句中,“<字段名>=<表达式>[,…n]”表示同时可以修改记录的多个字段的值,只要用“,”逗号分开修改项即可。【例4-27】把“class”班级表的“计应23-2”班的“班级编码”修改为“01012303”,“班级名称”修改为“计算机23-3”。实现代码如下:4.5使用T-SQL语句维护数据4.5.3DELETE语句删除记录

语法格式:

使用说明:

在指定的表中删除满足条件的记录。不指定条件时,将表中的记录全部删除。4.5使用T-SQL语句维护数据4.5.3DELETE语句删除记录1.删除一行记录删除一行记录的操作是已知条件是主键、唯一键字段的内容,并且在等值比较的条件下才能做到。例如,已知班级表中“class_id”的值或班级名称的值,因为这些字段都有唯一键的特点。【例4-28】把“计算机23-3”班的记录从“class”班级表中删除。〖案例分析〗已知条件是“班级名称='计算机23-3'”,由于班级名称字段在班级表中是唯一键字段,所以能唯一地删除“计算机23-3”班的记录。实现代码如下:4.5使用T-SQL语句维护数据4.5.3DELETE语句删除记录2.删除多行记录删除多行记录是指在表中有多条记录满足“条件表达式”的要求,这种情况下,满足给定条件的记录全部删除。【例4-29】删除“student”班级表中“入学总分”字段值大于“500”的记录。〖案例分析〗已知条件是“入学总分>500”,该条件代表“入学总分”字段的值大于500的所有记录,所以,它能同时删除多行记录。实现代码如下:4.5使用T-SQL语句维护数据4.5.3DELETE语句删除记录3.删除全部记录当删除语句中省略WHERE选项、或所指定的条件能代表全部记录、或条件永远成立时

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论