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

下载本文档

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

文档简介

1、,SQLSERVER数据库基础,第三章 数据的增、修改和删除,2020/7/22,1,中国职业教育联盟课程体系,中国职业教育联盟课程体系,成就百万精英,相关回顾,1、主键用来实施( ) 2、建立数据库表之间的主外键关系是为了维护数据库的哪种 完整性? 参照完整性引用完整性 3、年龄信息、性别信息分别采用哪种数据类型存储? 年龄: 、性别: 4、限制年龄age在18-40岁之间的检查约束表达式如何写? age = 18 and age=40,int,bit或char,A.实体完整性约束 B.引用完整性约束 C.域完整性约束 D.自定义完整性约束,A,相关回顾,5、限制 电话最多只能是11位,应该

2、用什么约束?表达式应该怎么写? 6、假设Course表是主表,Student个是从表,需要建立他们的主外键关系,则( ); A、在设计Course表的时候进入到关系的设计 B、在设计Student表的时候进入到关系的设计 C、 Student表和Course表外键名称必须一样 D、 Student表主键和Course表外键必须是自动增长数据类型,check 约束 len(phone) = 11,B,相关回顾,7、保证数据完整性从第( )步骤开始。 A、建立数据库 B、建立数据库表 C、在表中输入数据 D、数据导出 8、如果没有合适的列作为主键列,怎么办呢? 9、表Course表中的列Cours

3、eID是标识列,属于自动增长数据类型,标识种子为2,首标识递增量为3。先插入3条数据,然后再删除1行数据,再向表中增加数据行的时候,标识值将会是多( )? A:5B:8C:11D:2,B,如果没有合适的列作为主键,可以加入标识列。,c,预习检查,SQL的定义是什么? SQL的全称是结构化查询语言(Structured Query Language), 是一门ANSI的标准计算机语言,用来访问和操作数据库系统。 插入语句使用的是INSERT、UPDATE还是DELETE? INSERT TRUNCATE语句的作用是什么? 删除所有数据的同时并删除表的结构 说说逻辑运算符有哪几种?条件运算符有哪些

4、? 逻辑:AND、NOT、OR 条件:=、=、=,本章任务,实现对部门信息表deptInfo进行添加、删除和修改数据。,了解什么是SQL语言 熟练使用SQL命令添加数据 熟练使用SQL命令修改数据 熟练使用SQL命令删除数据,本章目标,什么是SQL,1、SQL的定义 SQL的全称是结构化查询语言(Structured Query Language),是一门ANSI的标准计算机语言,用来访问和操作数据库系统。,为什么要使用SQL,应用程序需要通过SQL语句才能与数据库打交道。 SQL语言结构简洁,功能强大,简单易学,得到了非常广泛的应用,成为了数据库操作的必备语言。,如何操作SQL命令,数据库对

5、象,执行,语法检查,选择数据库,SQL命令,执行结果,使用INSERT插入数据行,表结构如下 其中deptId为部门编号,主键列,并且是标识列 deptName表示部门名称,默认值为“学术部” remark表示部门备注,可以为空,INSERT语法,在SQL语句中,可以通过INSERTVALUES语句来实现数据的插入。它一次性向表中插入一条数据,可以整行插入,也可以部分插入。如果没有特定列,则认为是整行插入。其语法如下: 例如:,INSERT INTO 列名 VALUES ,INSERT INTO deptInfo(deptName,remark) VALUES (学术部, 保证学员学习专业技能

6、),插入自动标识列,自动标识列由系统自动产生,所以在增加时不需要手工添加。 运行效果如: 设置自动标识列:,INSERT INTO deptInfo(deptName,remark) VALUES (学术部, 负责教学),标识列,包含默认值的数据插入,直接使用DEFAULT关键字表示。 运行效果如: 设置默认值:,INSERT INTO deptInfo(deptName,remark) VALUES (DEFAULT, 负责教学),NULL值的插入,NULL值就是空值,既不为0,也不为空格。表示记录的那一列根本不存在数据,直接用NULL表示便可。 运行效果如: 设置NULL值:,INSERT

7、 INTO deptInfo(deptName,remark) VALUES (就业部,NULL),插入唯一值,唯一(UNIQUE)约束,要求该列中的值必须是完全唯一的,并且只能出现一次。 运行效果如:,INSERT INTO deptInfo(deptName,remark) VALUES (就业部, 负责学员的就业),数据表deptInfo中已存在为“就业部”的记录。,小结1-2,在使用INSERT语句的时候要注意以下几点: 插入的数据类型应与字段的数据类型相同 数据的大小应在列规定的范围内 在VALUES中,列出的数据位置必须与字段的排列位置相对应。 如果表名后面没有指定属性列表,那么待

8、插入的常量值的顺序必须与表中定义属性列的顺序一样。,UNION一次增加多行数据,使用UNION关键字,实现一次增加多行数据。语法如下: 例如:,INSERT INTO 列名 SELECT UNION SELECT ,INSERT INTO deptInfo(deptName,remark) SELECT 就业部,负责学员就业问题 UNION SELECT 教质部,管理学员生活上的问题 UNION SELECT 学术部,负责学员教学问题,最后一个SELECT 子句没有UNION关键字。,在使用union增加数据时,要求不能使用DEFAULT来增加 带有默认值的列。,使用UPDATE更新数据行,为

9、什么要更新数据? 当数据录入后,发现数据有错误等原因需要进行修改。这 个时候怎样修改呢? 在SQL语句中,提供了UPDATE语句实现数据修改功能。 语法格式如下:,UPDATE SET WHERE ,修改整张数据表,在UPDATE的语法中,如果没有WHERE子句,则表示修改整张表的数据。 修改前与修改后的数据对比:,UPDATE deptInfo SET deptName= 学术部,remark = 负责教学,修改后,修改前,21,WHERE子句修改数据表,当数据不小心录入错误时,需要对特定的行进行修改。那就要使用WHERE子句。例如: 执行修改的SQL语句如:,UPDATE deptInfo

10、 SET deptName= 学术部,remark = 负责教学 WHERE deptId = 1,UPDATE修改单列数据,UPDATE可以修改整张数据表,也可以修改单列或者多列数据,还可以修改单行或多行。例如: 执行修改的SQL语句如:,UPDATE deptInfo SET remark = 市场部 WHERE deptId = 2,小结3,编写SQL语句,更新deptInfo表中所有部门的备注信 息为“重庆足下”;然后再将学术部的备注信息 为“技高为师,身正为范”。 参考代码如下:,UPDATE deptInfo SET remark = 重庆足下 UPDATE deptInfo SE

11、T remark = 技高为师,身正为范 WHERE deptName = 学术部,更新所有部门的备注信息为“重庆足下”,将学术部的备注信息为“技高为师,身正为范”,删除数据行,为什么要删除数据? 数据有一个产生、发展和淘汰的过程,随着时间的推移,有 些数据需要进行淘汰。对数据库来说,淘汰就意味着删除。 在SQL语句中,提供DELETE语句实现数据的删除功能。其语法如下:,DELETE FROM WHERE ,删除单行数据,在部门表中删除部门编号为2的记录。例如: 执行删除的SQL语句如:,DELETE FROM deptInfo WHERE deptId = 2,数据被删除,删除多行数据,在

12、部门表中删除名称为“学术部”的记录。例如: 执行删除的SQL语句如:,DELETE FROM deptInfo WHERE deptName = 学术部,删除多行,删除所有数据,如果要部门表中的所有记录。例如: 执行删除的SQL语句如:,DELETE FROM deptInfo,如果DELETE语句没有WHERE子句,则表示删除表的所有数据。 数据虽然被完全删除了,但是不能删除表的结构。,小结4-1,以下的删除语句可以执行吗?,DELETE deptName FROM deptInfo,语法格式不正确,DELETE FROM deptInfo,小结4-2,在使用DELETE语句的时候要注意以下

13、几点: DELETE语句不能删除单个字段的值,只能删除整行数据。 使用DELETE语句只能删除在表中的数据,不能删除表本身。 如果这张表有外键关联,那么从这张表中删除记录将引起其他表的参照完整性问题,需要时刻注意。,用TRUNCATE删除数据,在SQL中,还提供了TRUNCATE TABLE语句来删除表中的所有数据。其语法如下: 例如:,TRUNCATE TABLE ,TRUNCATE TABLE deptInfo,TRUNCATE TABLE语句比用DELETE语句执行效率高,因为 TRUNCATE TABLE语句是一次性完成删除与表有关的所有数据 页的操作。并且不更新事务处理日志,删除后不能够使用事务出 来日志恢复数据。,小结5,使用TRUNCATE与DELETE语句都会删除表内的数据。 使用TRUNCATE与DELETE语句的区别: TRUNCATE TABLE的效率比DELETE语句的效率高。 TRUNCATE TABLE语句不能删除参与索引视图的表,而DELETE语句可以删除。,总结,1、写删除语句

温馨提示

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

评论

0/150

提交评论