目的学会用SQL语句对表记录的插入_第1页
目的学会用SQL语句对表记录的插入_第2页
目的学会用SQL语句对表记录的插入_第3页
目的学会用SQL语句对表记录的插入_第4页
目的学会用SQL语句对表记录的插入_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、 目的:目的:学会用学会用SQL语句对表记录的插入、修改、删除。语句对表记录的插入、修改、删除。 模块四模块四教学流程教学流程课题一课题一 Insert 语句语句的基本语法的基本语法课题二课题二Update 语句语句的基本语法的基本语法课题三课题三Delete 语句语句的基本语法的基本语法任务一任务一插入插入一行数据一行数据任务二任务二插入插入多行数据多行数据任务一任务一修改修改一列数据一列数据任务二任务二修改修改多列数据多列数据任务一任务一删除删除一行数据一行数据任务二任务二删除删除多行数据多行数据Insert 语句语句小结与提示小结与提示Update 语句语句小结与提示小结与提示Delet

2、e 语句语句小结与提示小结与提示引言引言:提出问题:提出问题引出主要内容。引出主要内容。总结本专题内容总结本专题内容期待解决期待解决的问题的问题理论作业理论作业实训作业实训作业引引 言言 前面我们介绍了如何在前面我们介绍了如何在SQL Server中创中创建数据库和表,那么当数据库和表建好后,建数据库和表,那么当数据库和表建好后,又怎样向其中添加数据呢?当数据添加到表又怎样向其中添加数据呢?当数据添加到表中,又怎样修改数据呢?对不需要的数据行,中,又怎样修改数据呢?对不需要的数据行,又怎样去删除呢?这些问题,就是本专题要又怎样去删除呢?这些问题,就是本专题要学习的内容,即由数据操纵语言学习的内

3、容,即由数据操纵语言DML 完成的完成的操作。操作。返回返回主要内容介绍主要内容介绍 -数据操纵语言数据操纵语言DML 插入语句插入语句 :INSERT语句语句 修改语句:修改语句:UPDATE语句语句删除语句:删除语句:DELETE语句语句INSERT语句语句基本功能与语法基本功能与语法功能:功能: 一行或者多行数据插入到表中一行或者多行数据插入到表中 。 把从其它表中所选择的数据插入到表中。把从其它表中所选择的数据插入到表中。语法:语法:INSERT INTO () VALUES () 其中:其中: 是要插入数据的表名。是要插入数据的表名。 这是一个可选项,它是要插入数据值的列名的列表。这

4、是一个可选项,它是要插入数据值的列名的列表。 这是按照表定义或者这是按照表定义或者所规定次序的列值表。所规定次序的列值表。返回返回任务一任务一 INSERT语句语句-插入一行数据插入一行数据 示例示例1: 往班级表中插入下表所示的一行数据。往班级表中插入下表所示的一行数据。班级表班级表班级编号(BJBH)班级名称(BJMC)班级人数(BJRS)在【查询分析器】中执行下列SQL语句: 041022021 电子商务1班 52insert into bj values (041022021,电子商务电子商务1班班,52) 在【查询分析器】执行情况如下: (所影响的行数为(所影响的行数为 1 行)行)

5、 这说明要插入的数据行已经插入到数据库表中。返回返回示例示例2: 往学生基本信息表中插入下表所示的一行数据。往学生基本信息表中插入下表所示的一行数据。学生基本信息表学生基本信息表在【查询分析器】中执行下列SQL语句:insert into stu values (041022021001,曹静曹静,女女,null, 0410222021,null,null,null,null)在【查询分析器】执行情况如下: (所影响的行数为(所影响的行数为 1 行)行) 这说明要插入的数据行已经插入到数据库表中。 041022021001 曹静 女 041022021学号(xh)姓名(xm)性别(xb)出生日

6、期(csrq)班级编号(bjbh)注册(zc)总成绩(zcj)名次(mc)插入操作需要注意以下问题插入操作需要注意以下问题 : Values子句中列的个数必须与表定义的个数相同子句中列的个数必须与表定义的个数相同 。 Values子句中列的数据类型必须与表定义的数据类型相容子句中列的数据类型必须与表定义的数据类型相容 。 数值类型:总成绩列数值类型:总成绩列(zcj),直接输入数值就可以了。),直接输入数值就可以了。 字符型:例如,学号(字符型:例如,学号(xh)、姓名)、姓名(xm)等要使用单引号。)等要使用单引号。 日期型:日期型要使用单引号引起来,一般缺省格式日期型:日期型要使用单引号引

7、起来,一般缺省格式为:为:YYYY-MM-DD HH:MM:SS。如果对应的某一列没有值,也就是该列值为空(如果对应的某一列没有值,也就是该列值为空(null),那么应该),那么应该在在INSERT语句中使用语句中使用null来表示插入空值。来表示插入空值。不需要对整个表中的所有列全部插入数据,这时需要使用不需要对整个表中的所有列全部插入数据,这时需要使用 ,但要注意列名顺序但要注意列名顺序 与数据之间的相互对应。与数据之间的相互对应。 示例示例3实现原理:使用子查询可以实现一次插入多行,实际上把实现原理:使用子查询可以实现一次插入多行,实际上把子查询的结果作为数据插入到表中子查询的结果作为数

8、据插入到表中 。语句格式为:语句格式为:insert into () 其中:其中: 是要插入数据的表名。是要插入数据的表名。 这是一个可选项,它是要插入数据值的列名这是一个可选项,它是要插入数据值的列名的列表。的列表。 这是一个查询语句(这是一个查询语句(SELECT)。)。 任务二任务二 INSERT语句语句-插入多行数据插入多行数据 返回返回示例示例4: 首先建立一张名为首先建立一张名为xuesheng的表,执行下列语句:的表,执行下列语句: create table xuesheng( xuehao char(10) not null, xingming char(8)使用前面介绍的使用

9、前面介绍的INSERT语句插入三行数据,如下所示:语句插入三行数据,如下所示:insert into xuesheng values(01,张三张三)insert into xuesheng values(02,李四李四)insert into xuesheng values(03,王五王五)则得到下列表格:则得到下列表格:xuesheng表表xuehaoxingming01张三张三02李四李四03王五王五示例示例4:(续上续上)下面又建立了一张名为下面又建立了一张名为student的空表的空表 :create table student( sno char(10) not null,snam

10、e char(8) 利用利用xuesheng表中数据,一次向表中数据,一次向student表插入多行表插入多行 :insert into student(sno,sname) select xuehao,xingming from xueshengStudent表表snosname01张三张三02李四李四03王五王五INSERT语句语句-小结与提示小结与提示利用利用insert语句插入一行数据时一定要注意列名表与语句插入一行数据时一定要注意列名表与values后面数据的对应关系。后面数据的对应关系。 个数的对应个数的对应 顺序的对应顺序的对应 数据类型的对应数据类型的对应利用利用insert语

11、句插入多行数据时一定要注意语句插入多行数据时一定要注意与与select子查询后面列名之间的对应关系。子查询后面列名之间的对应关系。返回返回UPDATE语句语句基本功能与语法基本功能与语法功能:功能: 修改已经存在的数据。修改已经存在的数据。语法:语法:update set = ,= where 其中:其中: 是要修改数据的表名。是要修改数据的表名。 是要修改数据的列名。是要修改数据的列名。 是修改之后的新列值。是修改之后的新列值。 是定位被修改数据行的条件。是定位被修改数据行的条件。 返回返回任务一任务一 UPDATE语句语句-修改一列数据修改一列数据示例示例5:把班级表(:把班级表(bj)中

12、)中“计算机软件计算机软件”班的班级人数班的班级人数(bjrs)改为改为“35”人。在【查询分析器】中执行下列人。在【查询分析器】中执行下列SQL语句:语句:update bj set bjrs=35 where bjmc=计算机软件计算机软件示例示例6:在成绩表:在成绩表(cj)中把课程编号中把课程编号(kcbh)为的为的“10920001 ”的平时成绩的平时成绩(pscj)加加2分。则执行下列分。则执行下列SQL语句:语句:update cj set pscj=pscj+2 where kcbh=“10920001”返回返回如果如果UPDATE语句的语句的SET子句有多对列名和列值,则能修

13、子句有多对列名和列值,则能修改多列数据。改多列数据。示例示例7:把班级表(:把班级表(bj)中班级编号)中班级编号(bjbh)为为“041022051 ”班的班级名称班的班级名称(bjmc)修改为修改为” WEB应用应用程序程序 1班班”,并把班级人数,并把班级人数(bjrs)改为改为“22”人。在【查询人。在【查询分析器】中执行下列分析器】中执行下列SQL语句:语句:update bj set bjmc=WEB应用程序应用程序 1班班,bjrs=22 where bjbh=041022051任务二任务二 UPDATE语句语句-修改多列数据修改多列数据返回返回UPDATE语句语句-小结与提示小

14、结与提示UPDATE语句的语句的SET子句只有一对列名和列值,则只能修改一列子句只有一对列名和列值,则只能修改一列数据数据; UPDATE语句的语句的SET子句有多对列名和列值,则能修改多列子句有多对列名和列值,则能修改多列数据。数据。WHERE条件子句非常重要,一定要定位准确条件子句非常重要,一定要定位准确,如果精确定位,使如果精确定位,使用能够唯一标识一行的列名,则只修改一行的数据;使用的用能够唯一标识一行的列名,则只修改一行的数据;使用的where子句定位的数据行多于一行时,就可以修改多个行。子句定位的数据行多于一行时,就可以修改多个行。修改数据的异常情况:修改数据的异常情况: 当使用当

15、使用UPDATE语句修改数据时,会出现语句修改数据时,会出现一些异常情况,例如:一些异常情况,例如: 没有要修改的数据没有要修改的数据 设置新值时,数据类型不兼容设置新值时,数据类型不兼容 修改数据时违背了约束修改数据时违背了约束返回返回DELETE语句语句基本功能与语法基本功能与语法功能:功能: 删除表中的数据行。删除表中的数据行。语法:语法:delete from where 其中:其中: 是要删除数据行的表名。是要删除数据行的表名。 是定位那些要删除数据行的条件。是定位那些要删除数据行的条件。 返回返回任务一任务一 DELETE语句语句-删除一行数据删除一行数据示例示例8: 把课程表把课

16、程表(kc)中课程编号中课程编号(kcbh)为为“10220052 ”的记录删除,对应的的记录删除,对应的SQL语句如下:语句如下:delete from kc where kcbh=10220052返回返回任务二任务二 DELETE语句语句-删除多行数据删除多行数据示例示例9:在成绩表:在成绩表(cj)中把学号为中把学号为“041022021001 ”的选课记录全部删除。对应的的选课记录全部删除。对应的SQL语句如下:语句如下: delete from cj where xh=041022021001示例示例10:将课程表:将课程表(kc)的数据全部删除,对应的的数据全部删除,对应的SQL语

17、句如下:语句如下:delete from kc 返回返回DELETE语句语句-小结与提示小结与提示DELETE语句删除数据后不能恢复,大家在删除数据之前,语句删除数据后不能恢复,大家在删除数据之前,最好做好数据备份。最好做好数据备份。为了防止误删除数据,为了防止误删除数据,WHERE子句非常重要,使用时要子句非常重要,使用时要小心谨慎。小心谨慎。注意注意DELETE语句与语句与DROP TABLE语句之间的差异,语句之间的差异,DELETE语句只是清理表中全部数据,表的结构或者说是语句只是清理表中全部数据,表的结构或者说是定义信息还存在;定义信息还存在;DROP TABLE语句不仅删除全部表中

18、数语句不仅删除全部表中数据,并且删除表的定义信息。据,并且删除表的定义信息。 返回返回总结总结主要介绍主要介绍DML语句,包括语句,包括insert、update、delete语句,能够对数据库表中的数据进行插入、修改和语句,能够对数据库表中的数据进行插入、修改和删除的操作。学习本章时,应重点理解和掌握删除的操作。学习本章时,应重点理解和掌握insert、update、delete语句在交互方式下的使用。语句在交互方式下的使用。 返回返回其其 它它1、下次内容:数据查询、下次内容:数据查询2、巩固知识,完成作业。、巩固知识,完成作业。实训作业实训作业返回返回目的:通过对实例数据库表的实际操作,学会用目的:通过对实例数据库表的实际操作,学会用SQL语语句对表记录的插入、修改、删除。句对表记录的插入、修改、删除。INSERT语句的使用 根据根据stucj数据库数据库,其中有班级表其

温馨提示

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

评论

0/150

提交评论