sqlserver初级教学资料第三章理论_第1页
sqlserver初级教学资料第三章理论_第2页
sqlserver初级教学资料第三章理论_第3页
sqlserver初级教学资料第三章理论_第4页
sqlserver初级教学资料第三章理论_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、sqlserver数据库基础第三章 数据的增、修改和删除2021-11-141中国职业教育联盟课程体系中国职业教育联盟课程体系成就百万精英2021-11-14中国职业教育联盟课程体系2相关回顾 1、主键用来实施( )2、建立数据库表之间的主外键关系是为了维护数据库的哪种 完整性? 参照完整性参照完整性引用完整性引用完整性3、年龄信息、性别信息分别采用哪种数据类型存储? 年龄: 、性别:4、限制年龄age在18-40岁之间的检查约束表达式如何写? age = 18 and age=40intbit或chara.实体完整性约束实体完整性约束 b.引用完整性约束引用完整性约束 c.域完整性约束域完整

2、性约束 d.自定义完整性约束自定义完整性约束 a2021-11-14中国职业教育联盟课程体系3相关回顾 5、限制 电话最多只能是11位,应该用什么约束?表达式应该怎么写? 6、假设course表是主表,student个是从表,需要建立他们的主外键关系,则( );a、在设计、在设计course表的时候进入到关系的设计表的时候进入到关系的设计b、在设计、在设计student表的时候进入到关系的设计表的时候进入到关系的设计c、 student表和表和course表外键名称必须一样表外键名称必须一样d、 student表主键和表主键和course表外键必须是自动增长数据类型表外键必须是自动增长数据类型

3、check 约束约束 len(phone) 、=、=2021-11-14中国职业教育联盟课程体系6本章任务实现对部门信息表deptinfo进行添加、删除和修改数据。2021-11-14中国职业教育联盟课程体系7 了解什么是sql语言 熟练使用sql命令添加数据 熟练使用sql命令修改数据 熟练使用sql命令删除数据本章目标2021-11-14中国职业教育联盟课程体系8什么是sql1、sql的定义sql的全称是结构化查询语言(structured query language),是一门ansi的标准计算机语言,用来访问和操作数据库系统。 2021-11-14中国职业教育联盟课程体系9为什么要使用

4、sql应用程序需要通过sql语句才能与数据库打交道。sql语言结构简洁,功能强大,简单易学,得到了非常广泛的应用,成为了数据库操作的必备语言。2021-11-14中国职业教育联盟课程体系10如何操作sql命令数据库对象数据库对象执行执行语法检查语法检查选择数据库选择数据库sql命令命令执行结果执行结果2021-11-14中国职业教育联盟课程体系11使用insert插入数据行表结构如下表结构如下其中deptid为部门编号,主键列,并且是标识列deptname表示部门名称,默认值为“学术部”remark表示部门备注,可以为空2021-11-14中国职业教育联盟课程体系12insert语法在sql语

5、句中,可以通过insertvalues语句来实现数据的插入。它一次性向表中插入一条数据,可以整行插入,也可以部分插入。如果没有特定列,则认为是整行插入。其语法如下:例如: insert into 列名列名 values insert into deptinfo(deptname,remark) values (学术部学术部, 保证学员学习专业技能保证学员学习专业技能) 2021-11-14中国职业教育联盟课程体系13插入自动标识列自动标识列由系统自动产生,所以在增加时不需要手工添加。运行效果如:设置自动标识列:insert into deptinfo(deptname,remark) valu

6、es (学术部学术部, 负责教学负责教学) 标识列标识列2021-11-14中国职业教育联盟课程体系14包含默认值的数据插入直接使用default关键字表示。运行效果如:设置默认值: insert into deptinfo(deptname,remark) values (default, 负责教学负责教学) 2021-11-14中国职业教育联盟课程体系15null值的插入null值就是空值,既不为0,也不为空格。表示记录的那一列根本不存在数据,直接用null表示便可。运行效果如:设置null值:insert into deptinfo(deptname,remark) values (就业

7、部就业部,null) 2021-11-14中国职业教育联盟课程体系16插入唯一值唯一(unique)约束,要求该列中的值必须是完全唯一的,并且只能出现一次。运行效果如: insert into deptinfo(deptname,remark) values (就业部就业部, 负责学员的就业负责学员的就业) 数据表数据表deptinfo中已存在为中已存在为“就就业部业部”的记录。的记录。2021-11-14中国职业教育联盟课程体系17小结1-2 在使用insert语句的时候要注意以下几点:插入的数据类型应与字段的数据类型相同数据的大小应在列规定的范围内在values中,列出的数据位置必须与字段

8、的排列位置相对应。如果表名后面没有指定属性列表,那么待插入的常量值的顺序必须与表中定义属性列的顺序一样。2021-11-14中国职业教育联盟课程体系18union一次增加多行数据使用union关键字,实现一次增加多行数据。语法如下:例如:insert into 列名列名 select unionselect insert into deptinfo(deptname,remark)select 就业部,负责学员就业问题 unionselect 教质部,管理学员生活上的问题 unionselect 学术部,负责学员教学问题最后一个最后一个select 子句没有子句没有union关关键字。键字。在

9、使用在使用union增加数据时,要求不能使用增加数据时,要求不能使用default来增加来增加带有默认值的列。带有默认值的列。2021-11-14中国职业教育联盟课程体系19使用update更新数据行为什么要更新数据? 当数据录入后,发现数据有错误等原因需要进行修改。这 个时候怎样修改呢? 在sql语句中,提供了update语句实现数据修改功能。语法格式如下: update set where 2021-11-14中国职业教育联盟课程体系20修改整张数据表在update的语法中,如果没有where子句,则表示修改整张表的数据。修改前与修改后的数据对比: update deptinfo set

10、deptname= 学术部学术部,remark = 负责教学负责教学修改后修改后修改前修改前2021-11-14中国职业教育联盟课程体系21where子句修改数据表当数据不小心录入错误时,需要对特定的行进行修改。那就要使用where子句。例如:执行修改的sql语句如: update deptinfo set deptname= 学术部学术部,remark = 负责教学负责教学 where deptid = 12021-11-14中国职业教育联盟课程体系22update修改单列数据update可以修改整张数据表,也可以修改单列或者多列数据,还可以修改单行或多行。例如:执行修改的sql语句如: u

11、pdate deptinfo set remark = 市场部市场部 where deptid = 22021-11-14中国职业教育联盟课程体系23小结3编写sql语句,更新deptinfo表中所有部门的备注信息为“重庆足下”;然后再将学术部的备注信息为“技高为师,身正为范”。参考代码如下:update deptinfo set remark = 重庆足下重庆足下update deptinfo set remark = 技高为师,身正为范技高为师,身正为范 where deptname = 学术部学术部更新所有部门的备注更新所有部门的备注信息为信息为“重庆足下重庆足下”将学术部的备注信息为将

12、学术部的备注信息为“技高为师,身正为范技高为师,身正为范”2021-11-14中国职业教育联盟课程体系24删除数据行为什么要删除数据? 数据有一个产生、发展和淘汰的过程,随着时间的推移,有 些数据需要进行淘汰。对数据库来说,淘汰就意味着删除。在sql语句中,提供delete语句实现数据的删除功能。其语法如下: delete from where 2021-11-14中国职业教育联盟课程体系25删除单行数据在部门表中删除部门编号为2的记录。例如:执行删除的sql语句如: delete from deptinfo where deptid = 2数据被删除数据被删除2021-11-14中国职业教育

13、联盟课程体系26删除多行数据在部门表中删除名称为“学术部”的记录。例如:执行删除的sql语句如: delete from deptinfo where deptname = 学术部学术部删除多行删除多行2021-11-14中国职业教育联盟课程体系27删除所有数据如果要部门表中的所有记录。例如:执行删除的sql语句如: delete from deptinfo如果如果delete语句没有语句没有where子句,则表示删除表的所有数据。子句,则表示删除表的所有数据。数据虽然被完全删除了,但是不能删除表的结构。数据虽然被完全删除了,但是不能删除表的结构。2021-11-14中国职业教育联盟课程体系2

14、8小结4-1以下的删除语句可以执行吗?以下的删除语句可以执行吗?delete deptname from deptinfo语法格式语法格式不正确不正确delete from deptinfo2021-11-14中国职业教育联盟课程体系29小结4-2 在使用delete语句的时候要注意以下几点: delete语句不能删除单个字段的值,只能删除整行数据。 使用delete语句只能删除在表中的数据,不能删除表本身。 如果这张表有外键关联,那么从这张表中删除记录将引起其他表的参照完整性问题,需要时刻注意。2021-11-14中国职业教育联盟课程体系30用truncate删除数据在sql中,还提供了tr

15、uncate table语句来删除表中的所有数据。其语法如下:例如:truncate table truncate table deptinfotruncate tabletruncate table语句比用语句比用deletedelete语句执行效率高,因为语句执行效率高,因为truncate tabletruncate table语句是一次性完成删除与表有关的所有数据语句是一次性完成删除与表有关的所有数据页的操作。并且不更新事务处理日志,删除后不能够使用事务出页的操作。并且不更新事务处理日志,删除后不能够使用事务出来日志恢复数据。来日志恢复数据。2021-11-14中国职业教育联盟课程体系31小结5 使用truncate与delete语句都会删除表内的数据。 使用truncate与delete语句的区别: truncate table的效率比delete语句的效率高。 truncate table语句不能删除参与索引视图的表,而delete语句可以删除。2021-11-14中国职业教育联盟课程体系32总结1、写删除语句时,可以不要、写删除语句时,可以不要where条件吗?条件吗? 2、向表中插入数据时,如果某个列有默认值,要使用这个默、向表中插入数据时,如果某个列有默认值,要使用这个默认值,应该怎么做?认值,应该怎么做? 可以,但

温馨提示

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

评论

0/150

提交评论