好文档就是一把金锄头!
欢迎来到金锄头文库![会员中心]
电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

06sql server表格中数据.ppt

52页
  • 卖家[上传人]:hs****ma
  • 文档编号:607366012
  • 上传时间:2025-05-24
  • 文档格式:PPT
  • 文档大小:597.50KB
  • / 52 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 单击此处编辑母版标题样式,,单击此处编辑母版文本样式,,第二级,,第三级,,第四级,,第五级,,,单击此处编辑母版标题样式,,单击此处编辑母版文本样式,,第二级,,第三级,,第四级,,第五级,,,,*,第六章 编辑维护表格数据,1,,任务的提出,在本章,我们将在上一章实现的,《,晓灵学生管理系统,》,数据库和各基本表的基础上,输入各相关数据在输入的过程中,讲解数据的插入、删除与修改的各种方法最后我们要对晓灵学生管理系统所涉及的数据进行查询或检索,因为我们在数据库中存储数据并不是目的,我们更观注于对数据的查询和使用,2,,本节目标:,,Insert,添加表格数据,,Update,实现数据的修改,,Delete,删除表格数据,,本节重点,,Insert,添加表格数据,,Update,实现数据的修改,,Delete,删除表格数据,,本节难点:,,添加、修改、删除数据时的级联操作,,,3,,简单的,insert,语法,语法:,Insert into,表名,values (,列的值,列的值,),,例:,,insert into,,学生表,values,(,‘,4001,’,,,‘,李超,’,,,‘,男,’,,,22,,,‘,网络,','',',山东济南,',',团员,'),,4,,实例,1,insert into,学生表,values(,‘,4004,’,,,‘,张飞,’,,,‘,女,’,,30,,‘,网络,','',',山东济南,',',团员,'),,说明:,,这个语句依然执行成功。

      服务器 不会找到这个错误,因为这两列的数据类型一致或者相兼容而服务器不会从字面意义上来识别错误的由于这种错误经常出现,而且难以被发现,所以,建议在使用,insert,语句时最好列出插入数值列的名字,5,,插入特定的列,语法:,,Insert into,,表名(列名,列名,列名,…,),values,(,列值,列值,列值,…,.),,例:,,insert into,学生表,(,学号,,,姓名,,,性别,,,年龄,,,专业,) values('4005',',徐焦,',',女,',30,',高全,'),,6,,插入数据行 7-1,,InSert [INTO],<,表名,>,[,列名,] Values,<,值列表,>,INSERT INTO Students (SName,SAddress,SGrade,SEmail,SSEX),,VALUES (',张青裁,',',上海松江,',6,'',0),7,,插入数据行 7-2,,注意事项,1:,每次插入一行数据,不可能只插入半行或者几列数据,因此,插入的数据是否有效将按照整行的完整性的要求来检验;,INSERT INTO Students (SName,SAddress,SGrade,SEmail,SSEX),,VALUES (',张青裁,'),代码错误,8,,插入数据行 7-3,,注意事项,2:,每个数据值的数据类型、精度和小数位数必须与相应的列匹配,;,INSERT INTO Students (SName,SAddress,SGrade,SEmail,SSEX),,VALUES (',张青裁,',',上海松江,',ZQC,'', 'ZG'),代码错误,9,,实例,2,:标识列,insert into,学生表,(,学号,,,姓名,,,性别,,,年龄,,,专业,) values('4005',',徐焦,',',女,',30,',高全,'),,说明:,,如果在一表中存在定义为标识列,那么该列再插入数据时必须省略该列的列名和列值,,若学号设置了标识列,则上面的语句运行错误,10,,插入数据行 7-4,,注意事项,3:,不能为标识列指定值,因为它的数字是自动增长的,;,INSERT INTO Students (SCode,SName,SAddress,SGrade,SEmail,SSEX),,VALUES (32,',张青裁,',',上海松江,',6,'',0),,代码错误,11,,实例3:非空列,insert into,学生表,(,学号,,,性别,,,年龄,,,专业,) values('4005',',女,',30,',高全,'),,如果在一表中存在定义为,not null,的数据列,那么该列的值必须要出现在,values,的列表中。

      否则,服务器会给出错误提示,操作失败如果姓名列是非空列则上面的语句将运行错误,,12,,插入数据行 7-5,,注意事项,4:,如果在设计表的时候就指定了某列不允许为空,则必须插入数据,;,INSERT INTO Students (SAddress,SGrade,SEmail,SSEX),,VALUES (',上海松江,',6,'',0),代码错误,13,,实例,4,:数据完整性,语句1、,insert into,学生表,(,学号,,,姓名,,,性别,,,年龄,,,专业,) values(,‘,4005,’,,,‘,周亮,’,,,‘,男,’,,,20,,',音乐,'),,说明:,,如果要写入数据的表的列添加了数据完整性约束,那么要写入的数据必须符合约束的要求,,如果在专业表和学生表是参照关系,在专业表中没有音乐这个专业,则上面的语句错误14,,用户自定义约束,insert into,学生表,(,学号,,,姓名,,,性别,,,年龄,,,专业,) values(,‘,4005,’,,,‘,周亮,’,,,‘,男,’,,,30,,',音乐,'),,说明:,,如果在用户自定义约束中定义年龄必须在15到25之间(,check(,年龄,>15 and,年龄,<25),),则上面的语句错误,,15,,插入数据行 7-6,,注意事项,5:,插入的数据项,要求符合检查约束的要求,INSERT INTO Students (SName,SAddress,SGrade,SEmail,SSEX),,VALUES (',张青裁,',',上海松江,',6,',ZQC,',0),代码错误,16,,实例5:默认值,insert into student,(,sno,sname,sage,sdept,),values(,‘,001,’,,,‘,周亮,', 20,,,',网络,'),,说明:,,若某列设置了默认值,则可以省略该列名和列值,,如果性别设置了默认值‘女’,并且是,not null(,不能为空,),则上面的语句是正确的,,17,,插入数据行 7-7,,注意事项,6:,具有缺省值的列,,可以使用DEFAULT(缺省)关键字来代替插入的数值,INSERT INTO Students (SName,SAddress,SGrade,SEmail,SSEX),,VALUES (',张青裁,',,DEFAULT,,6,'',0),18,,小结,1,,编写,SQL,语句,把你自己的信息插入到学员信息表中,19,,总结,1,、列值和列名的,排列顺序,必须一致,。

      2,、列值和列名中列的,个数,必须相等,3,、列值和列名中列的,数据类型,必须一致或可转换,4,、若列中含有,默认值,或含有,标识列,,,,则列名及其对应的列值,应省略,,5,、若存在定义为,非空的数据列,,,,那么,values,列表中,必须写出该列的值6、有,数据完整性约束的列,,一定要符合数据完整性中约束的要求,20,,使用,update,实现数据的修改,当需要修改表中一列或多列的值时,可以使用,update,语句,.,,Update,表名,set,列名,=,列的值,列名,=,列值,,where,条件,21,,使用,update,实现数据的修改,例,1.,,update student,,set sdept=‘,高全,',,where sno=‘104‘,,update student,,set sdept=',清网,',,from student,,where sno=‘110,',,22,,使用,update,实现数据的修改,例,2,:不加,where,字句,,update,语句会修改表中的每一行数据,,update,s,tudent,,set,s,name,=‘刘晓庆’,,结果将学生表中所有学生的姓名都改成了,刘晓庆,,这种情况只是在将一列的值改为相同的值时用。

      一般情况下要加上条件,23,,例,3,一次更新表中的多个列,use xinwang,,go,,update student1,,set sname=',小犬,',,,sage='8',,,ssex=',女,',,,sdept=',小日本,',,where sno='102',24,,使用,delete,删除表中的数据,当要从表中删除数据时,最常用的方法是使用,delete,语句,,Delete from,表名,where,条件,,没有带,where,子句的,delete,语句将会删除这个表的每一行数据,25,,使用,delete,删除表中的数据,例,1,:删除一条记录,,,use qingwang,,go,,Delete from student where sno=' 102 ‘,,说明:删除学生表学号为,102,的记录;,26,,使用,delete,删除表中的数据,例,2,:删除多条记录,,use xinwang,,go,,delete from student2,,where ssex='女',,说明:删除学生表中所有的数据,使其成为一个空表,,另:子查询同样嵌套在,delete,字句中,用以执行删除 操作的条件。

      27,,例,2,:删除所有的记录,,use xinwang,,go,,delete from student2,,28,,注意:,,省略,where,子句的,delete,语句将会删除这个表的每一行所以使用,delete,语句要小心,因为数据将从数据库中永远的删除,29,,删除时,当删除被参照关系的某一行时,而参照关系存在若干行,且外键列的值与主键列的值相同,这时你单独删除外键的值是删除不掉的如果要删除外键的值有如下三种方法:,,1,、级联删除,,2,、受限删除,,3,、置空值删除,30,,级联删除,如果想删除主表中的数据时,要先将从表中的外键值与主表中主键值相同的行删除,再删除主表中的数据例如:,,我要将学生表中学号为,001,的学生的基本信息删除,那么我就要先在成绩表中删除学号为,001,的学生的成绩,然后在学生表中删除他的信息,31,,受限删除,如果要删除的主表中的数据,外键值在主表的主键值中没有可以直接删除,否则不可以删除,,也就是说从表中的数据不受限制,我可以任意删除主表中的数据受限制,删除时要先看这个值在从表中是否有相同的数据,32,,使用,truncate table,清空表格,Truncate table,语句可以删除表格中所有的数据,只留下一个表格定义。

      Truncate table,表名,,33,,使用,truncate table,清空表格,Truncate table student1,,,例:,Truncate table stuent1,,注意:,,,Truncate table,语句可以删除表格中所有的数据,只留下一个表格定义34,,Truncate table,和,DELETE,语句的区别:,,1,、,Truncate table,不记录事务日志2,、,Truncate table,删除记录后,标识列重新,,开始计数3,、,DELETE,语句锁定行,,Truncate table,,,不锁定行,只锁定表和页4,、若其它表中外键指向的该表,则不能,,用,Truncate table,删除35,,使用企业管理器管理表格数据,1,返回所有行,,2,返回指定前面的,n,行数据在属性里面可以设置属性,如重新和设置,distinct,关键字,,4,在关系图中练习,排序36,,总结,,本节目标:,,Insert,添加表格数据,,Update,实现数据的修改,,Delete,删除表格数据,,37,,预习,,第四章:4.4数据查询(P79----P86),,38,,上机目标,,,编写,SQL,语句,完成,BBS,数据库常见的增加、修改和删除操作,教员复习表结构、讲解上机任务,39,,训练技能点,,为数据库表编写SQL语句增加单行数据和多行数据,,使用SQL语句删除数据,40,,,训练要点,,使用,InSert,语句向数据库表插入数据,,需求说明,,在,BBSUsers,表中插入以下的数据,(1-2,行,),:,,阶段1,,41,,阶段1,,演示插入的代码,完成时间:,15,分钟,INSERT INTO BBSUsers (UName,UPassword,UEmail,UBirthday,USex,UClass,UStatement,URegDate,UState,UPoint),,VALUES,,(',火云邪神,','hyxs007','', '1978-7-9',1,1,',快,…', '2005-8-9',1,20000),42,,阶段1,,共性问题集中讲解,,SQL,中的豆号为英文豆号,不能是中文逗号,,日期数据项、字符数据,需要加英文的单引号引起来,43,,,需求说明:,,编写创建版面的,SQL,语句,,创建的版面要求:,阶段2,,完成时间:,15,分钟,版 块 名 称,版 主,ID,本 版 格 言,点 击 数,贴 子 数,物品交易,3,买卖有风险、入市请慎重,0,0,综合讨论,2,有话就说,0,0,44,,上机练习,1,、先创建学生表,,编号 为主键,而且是标识列,,姓名是非空的,,性别 是男,女,非男非女,半男半女,,年龄 只能是,15,到,30,,专业 默认为网络,,成绩表,,学生号,,课程号,,成绩,,学生号,课程号同为主键。

      学生号,课程号分别为外键,,,45,,上机练习,插入数据:,,将班里学生的信息插入表中(按正确的信息输入),,将个别的几个学生改成别的专业的(高全,网站,数字艺术将你不喜欢的学生的性别改成非男非女,或 半男半女,,将网络专业的学生的年龄增加一岁,,删除信息不对的学生,,46,,上机练习,二,.,新建数据库名为,(wnt),,数据文件存放在,D:/DATA,,日志文件存放在,D:/LOG,文件夹,,,然后将给定的数据库备份文件,wnt.bak,恢复到新建的数据库,wnt,上,,,恢复后数据库中有学生关系表,Student,、课程关系表,Course,、选修关系表,SC,,结构说明如下,,,并有用于测试的数据记录,,,然后完成下面的习题,,表,Student,,学号,Sno,姓名,Sname,性别,Ssex,年龄,Sage,所在系,Sdept,,表,Course,,课程号,Cno,课程名,Cname,先行课,Cpno,学分,Ccredit,,表,SC,,学号,Sno,课程号,Cno,成绩,Grade,图,1,学生,-,课程数据库,47,,上机练习,8,)向表,Student,中添加一条记录:学号为,“,95005,”,,姓名为,“,孙辉,”,,性别为,“,男,”,,年龄为,“,19,”,,所在系为,“,机电系,”,。

      9,)删除表,Course,中课程名为,“,操作系统,”,的课程信息10,)将学生刘晨的年龄改为,“,17,”,,所在系改为,“,会计系,”,11),在数据库,wnt,中新建表,--,学生联系方式表,,,字段,sno(,学生编号,),stel(,学生,),sno,为主键,,48,,习题,使用,SQL,命令将学生,STUDENT,中的学生年龄,AGE,字段的值增加,1,岁,应该使用的命令是,_____,,A,.,REPLACE AGE WITH AGE+1,,B,.,UPDATE STUDENT AGE WITH AGE+1,,C,.,UPDATE SET AGE WITH AGE+1,,D,.,UPDATE STUDENT SET AGE=AGE+1,,49,,习题,在,Transact-SQL,语法中,用来插入数据的命令是(,___,),用于更新的命令是(,___,),,A,、,INSERT,,,UPDATE,,BUPDATE,INSERT,,C,、,DELETE,,,UPDATE,,D,、,CREATE,,,INSERT INTO,50,,习题,38. SQL,语言中,删除一个表的命令是(,,),,A.DELETE,,B.DROP,,C.CLEAR,,D.REMOVE,,51,,习题,执行,truncate table,表,1,命令的作用是,( ),,A,删除表,1,,B,删除表,1,中的数据,,C,备份表中的数据,,D,以上说法都不对,52,,。

      点击阅读更多内容
      关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
      手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
      ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.