2.3.4 数据操纵.ppt_第1页
2.3.4 数据操纵.ppt_第2页
2.3.4 数据操纵.ppt_第3页
2.3.4 数据操纵.ppt_第4页
2.3.4 数据操纵.ppt_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

数据操纵语言是完成数据操作的命令,一般分为两种类型的数据操纵,它们统称为DML:,2.3.4SQL语言的数据操纵,DML,数据检索(常称为查询):寻找所需的具体数据。,数据修改:添加、删除和改变数据。,数据操纵语言的一般组成,INSERT(插入)DELETE(删除)UPDATE(更新)SELETE(检索,由于特殊,一般又将它以查询(检索)语言单独出现,又称查询)其它,【格式1】INSERTINTOVALUES();【格式2】INSERTINTOFROMARRAY|FROMMEMVAR;【功能】在指定的表文件末尾追加一条记录。格式1用表达式表中的各表达式值赋值给中的相应的各字段。格式2用数组或内存变量的值赋值给表文件中各字段。【说明】如果某些字段名在INTO子句中没有出现,则新记录在这些字段名上将取空值(或默认值)。但必须注意的是,在表定义说明了NOTNULL的字段名不能取空值。,1插入记录,1插入记录,:指定表文件中的字段,缺省时,按表文件字段的顺序依次赋值。:指定要追加的记录各个字段的值。,【例1】在表文件STUD的末尾追加三条记录。*用表达式方式追加第一条记录*INSERTINTOSTUD(学号,姓名,性别,班级名,系别代号,地址,出生日期,是否团员)VALUES(011110,李建国,男,计0121,01,湖北武汉,09/28/02,.T.);,1插入记录,*用数组方式追加第二条记录*DIMENSIONDATA8DATA(1)=011103DATA(2)=李宁DATA(3)=女DATA(4)=电0134DATA(5)=02DATA(6)=江西九江DATA(7)=05/06/85DATA(8)=.F.INSERTINTOSTUDFROMARRAYDATA,*用内存变量方式追加第三条记录*学号=011202姓名=赵娜性别=女班级名=英0112系别代号=03地址=广西南宁出生日期=02/21/84是否团员=.F.INSERTINTOSTUDFROMMEMVARLIST,例在SC表中插入一条选课记录(S7,C1)INSERTINTOSC(SNO,CNO)VALUES(s7,c1)将VALUES子句中的值按照INTO子句中指定列名的顺序插入到表中对于INTO子句中没有出现的列,则新插入的记录在这些列上将取空值,如上例的SCORE即赋空值。但在表定义时有NOTNULL约束的属性列不能取空值。,插入一行的部分数据值,用于表间的拷贝,将一个表中的数据抽取数行插入另一表中,可以通过子查询来实现。插入数据的命令语法格式为:INSERTINTO(,)子查询,插入多行记录,例求出各系教师的平均工资,把结果存放在新表AVGSAL中。首先建立新表AVGSAL,用来存放系名和各系的平均工资CREATETABLEAVGSAL(DEPARTMENTVARCHAR(20),AVGSALSMALLINT)然后利用子查询求出T表中各系的平均工资,把结果存放在新表AVGSAL中。INSERTINTOAVGSALSELECTDEPT,AVG(SAL)FROMTGROUPBYDEPT,1插入记录,【格式】UPDATESET=,=WHERE;【功能】更新指定表文件中满足WHERE条件子句的数据。其中SET子句用于指定列和修改的值,WHERE用于指定更新的行,如果省略WHERE子句,则表示表中所有行。【说明】更新操作又称为修改操作。【例2】将成绩表(SC)中,所有课程号为02的成绩各加5分。UPDATESCSET成绩=成绩+5WHERE课程号=02“;,2更新记录命令,修改一行例:把刘伟教师转到信息系。UPDATETSETDEPT=信息WHERETN=刘伟修改多行例:将所有学生年龄增加1岁UPDATESSETAGE=AGE+1,2更新记录命令,例:把教师表中工资小于等于1000元的讲师的工资提高20%。UPDATETSETSAL=1.2*SALWHEREPROF=讲师ANDSAL=1000,2更新记录命令,【格式】DELETEFROMWHERE;【功能】从指定的表中删除满足WHERE子句条件的所有记录。如果在DELETE语句中没有WHERE子句,则该表中的所有记录都将被删除。【说明】这里的删除是逻辑删除,即在删除的记录前加上一个删除标记“*”。【例3】删除STUD表中所有性别为男的记录。DELETEFROMSTUDWHERE性别=“男”;,3删除记录,删除一行记录例:删除刘伟教师的记录。DELETEFROMTWHERETN=刘伟删除多行记录例:删除所有教师的授课记录DELETEFROMTC,3删除记录,执行此语

温馨提示

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

最新文档

评论

0/150

提交评论