第三章_添加删除修改数据(SQL)

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

数据库对象
执行结果
常用运算符
• 常用的逻辑运算符如:
逻辑表达式 说明 示例
AND
逻辑与
对两个表达式进行逻辑与运算,如果 两个表达式的返回值都是true,则运算 结果返回true,否则返回false。
对单个表达式的逻辑值区反,若表达 式的值为true,则返回false,否则返 回true。 两个表达式中的一个为true,返回值就 为true,否则返回false。
说说逻辑运算符有哪几种?条件运算符有哪些? 逻辑:AND、NOT、OR 条件:=、>、<、<>、 >=、<=
4
本章任务
实现对部门信息表deptInfo进行添加、删除和修改数据。
5
本章目标
掌握SQL中的逻辑和条件运算符 熟练使用SQL命令添加数据 熟练使用SQL命令修改数据 熟练使用SQL命令删除数据
执行删除的SQL语句如:
DELETE FROM deptInfo
如果DELETE语句没有WHERE子句,则表示删除表的所有数据。 数据虽然被完全删除了,但是不能删除表的结构。
31
小结4-1
以下的删除语句可以执行吗?
语法格式 不正确
DELETE deptName FROM deptInfo
DELETE FROM deptInfo
键字。 21
小结2
编写SQL语句,把新增的“品质保障部”、“市场部” 一次性添加到deptInfo表中。 参考代码如下:
INSERT INTO deptInfo(deptName,remark) SELECT '品质保障部','负责学员就业问题' UNION SELECT '市场部','管理学员生活上的问题'
代码错误
代码错误 INSERT INTO deptInfo(remark) VALUES ('保证学员学习专业技能') 代码错误 INSERT INTO deptInfo(deptName,remark) VALUES ('学术部') INSERT INTO deptInfo(deptid,deptName,remark) 如果在设计表的时候就指定了某列不允许为空,则必须插入数据 。 VALUES (1,'学术部', '负责教学') 每次插入一行数据,不可能只插入半行或者几列数据,因此,
唯一(UNIQUE)约束,要求该列中的值必须是完全唯一的, 并且只能出现一次。
INSERT INTO deptInfo(deptName,remark) VALUES ('就业部', '负责学员的就业')
运行效果如:
数据表deptInfo 中已存在为“就 业部”的记录。
16
小结1-2
分析下面代码是否正确?
NOT
逻辑非
OR
逻辑或
9
常用运算符
• 常用的条件运算符如:
运算符
= > < >= <= <> ! 等于 大于 小于 大于或等于 小于或等于 不等于 非
含义
大多与C语言中的一样,很容易理解 10
使用INSERT插入数据行
表结构如下
– – – 其中deptId为部门编号,主键列,并且是标识列 deptName表示部门名称,默认值为“学术部” remark表示部门备注,可以为空
25
UPDATE修改单列数据
UPDATE可以修改整张数据表,也可以修改单列或者多列 数据,还可以修改单行或多行。例如:
执行修改的SQL语句如:
UPDATE deptInfo SET remark = '市场部' WHERE deptId = 2
26
小结3
编写SQL语句,更新deptInfo表中所有部门的备注信 息为“重庆足下”;然后再将学术部的备注信息 为“技高为师,身正为范”。 参考代码如下:
TRUNCATE TABLE的效率比DELETE语句的效率高。 TRUNCATE TABLE语句不能删除参与索引视图的表, 而DELETE语句可以删除。
总结
1、为deptInfo表中添加一个“财务部”,备注信息为默认值, SQL语句怎么写? INSERT INTO deptInfo(deptName) VALUES('财务部') 2、更新deptInfo表,将“财务部”的备注信息修改为“大量 资金”,SQL语句怎么写? UPDATE deptInfo SET remark = '大量资金' WHERE deptName = '财务部' 3、删除deptInfo表中的“财务部”,SQL语句怎么写? DELETE FROM deptInfo WHERE deptName = '财务部'
UPDATE deptInfo SET deptName= '学术部',remark = '负责教学'
修改前与修改后的数据对比:
修改前
修改后 24
WHERE子句修改数据表
当数据不小心录入错误时,需要对特定的行进行修改。那 就要使用WHERE子句。例如:
执行修改的UPDATE SQL语句如: 简单来讲, 语句执行时,一次处理一行。 当WHERE子句的表达式跟当前行相匹配时,就修改这一行。 UPDATE语句可以更新一行,也可以同时更新多行。如果没 deptInfo SET deptName= '学术部',remark = '负责教学' UPDATE WHERE deptId = 1 有WHERE子句,则表示对数据表所有记录进行相应修改。
数据有一个产生、发展和淘汰的过程,随着时间的推移,有
些数据需要进行淘汰。对数据库来说,淘汰就意味着删除。
在SQL语句中,提供DELETE语句实现数据的删除功能。 其语法如下:
DELETE FROM <表名> [WHERE <删除条件>]
28
删除单行数据
在部门表中删除部门编号为2的记录。例如:
数据被删除
插入的数据是否有效将按照整行的完整性的要求来检验; 不能为标识列指定值,因为它的数字是自动增长的;
小结1-2
在使用INSERT语句的时候要注意以下几点:
插入的数据类型应与字段的数据类型相同 数据的大小应在列规定的范围内 在VALUES中,列出的数据位置必须与字段的排列位置 相对应。
如果表名后面没有指定属性列表,那么待插入的常量 值的顺序必须与表中定义属性列的顺序一样。
19
SELECT INTO一次增加多行数据
使用SELECT INTO关键字,实现一次增加多行数据。语法 如下:
SELECT [列名] INTO 新表名 FROM 表名
例如: Select Sname,Saddress,Semail INTO NewStuInfor From Student 注意:NewStuInfor是新表 20
6
为什么要使用SQL
• 应用程序需要通过SQL语句才能与数据库打交道。 • 难道仅仅使用SQL Server Management Studio操作数据 库? • SQL语言结构简洁,功能强大,简单易学,得到了非常广 泛的应用,成为了数据库操作的必备语言。
7
语法检查 执行
如何操作SQL命令
选择数据库 SQL命令
执行删除的SQL语句如:
DELETE FROM deptInfo WHERE deptId = 2
29
删除多行数据
在部门表中删除名称为“学术部”的记录。例如:
删除多行
执行删除的SQL语句如:
DELETE FROM deptInfo WHERE deptName = '学术部'
30
删除所有数据
如果要部门表中的所有记录。例如:
11
INSERT语法
在SQL语句中,可以通过INSERT…VALUቤተ መጻሕፍቲ ባይዱS语句来实现数 据的插入。它一次性向表中插入一条数据,可以整行插入, 也可以部分插入。如果没有特定列,则认为是整行插入。 其语法如下:
INSERT [INTO] <表名> [列名] VALUES <值列表>
例如:
INSERT INTO deptInfo(deptName,remark) VALUES ('学术部', '保证学员学习专业技能') 12
UNION一次增加多行数据
使用UNION关键字,实现一次增加多行数据。语法如下:
INSERT [INTO] <表名> [列名] SELECT <值列表> UNION …… SELECT <值列表>
例如:
INSERT INTO deptInfo(deptName,remark) 最后一个 SELECT '就业部','负责学员就业问题' UNION 在使用 union增加数据时,要求不能使用 DEFAULT来增加 SELECT SELECT '教质部','管理学员生活上的问题' UNION 子句没有 带有默认值的列。 SELECT '学术部','负责学员教学问题' UNION关
INSERT SELECT一次增加多行数据
使用INSERT SELECT关键字,实现一次增加多行数据。 语法如下:
INSERT [INTO] <表名> [列名] SELECT <值列表> FROM 表名
例如:
注意:NewStuInfor是已存在的 表 Insert into NewStuInfor(name,address,email) Select Sname,Saddress,Semail From Student
小结4-2
在使用DELETE语句的时候要注意以下几点:
DELETE语句不能删除单个字段的值,只能删除整行数 据。 使用DELETE语句只能删除在表中的数据,不能删除表 本身。 如果这张表有外键关联,那么从这张表中删除记录将 引起其他表的参照完整性问题,需要时刻注意。
用TRUNCATE删除数据
在SQL中,还提供了TRUNCATE TABLE语句来删除表中的 所有数据。其语法如下:
第三章
添加、删除、修改数据
相关回顾
1、至少说出SQL Server中三种常用的基本数据类型。 varchar、char、int、float、bit、dataTime、money、numeric 2、建立数据库表之间的主外键关系是为了维护数据库的哪种 完整性? 参照完整性 3、年龄信息、性别信息分别采用哪种数据类型存储? 年龄:int 、性别: bit或char 4、限制年龄age在18-40岁之间的检查约束表达式如何写? age >= 18 and age<=40
运行效果如:
设置默认值:
14
NULL值的插入
NULL值就是空值,既不为0,也不为空格。表示记录的那 一列根本不存在数据,直接用NULL表示便可。
INSERT INTO deptInfo(deptName,remark) VALUES ('就业部',NULL)
运行效果如:
设置NULL值:
15
插入唯一值
TRUNCATE TABLE <表名>
例如:
TRUNCATE TABLE deptInfo
TRUNCATE TABLE语句比用DELETE语句执行效率高,因为 TRUNCATE TABLE语句是一次性完成删除与表有关的所有数据 页的操作。并且不更新事务处理日志,删除后不能恢复数据。
34
小结5
使用TRUNCATE与DELETE语句都会删除表内的 数据。 使用TRUNCATE与DELETE语句的区别:
2
相关回顾
5、保证数据完整性从第( B )步骤开始。
A、建立数据库
B、建立数据库表 C、在表中输入数据
D、数据导出
6、创建表的字段主要有哪些操作项?
第一步:输入字段名 第二步:确定数据类型 第三步:确定是否允许为空 第四步:确定是否为主键或者标识列 第五步:确定默认值
预习检查
插入语句使用的是INSERT、UPDATE还是 DELETE? INSERT TRUNCATE语句的作用是什么? 删除所有数据的同时并不删除表的结构
更新所有部门的备注 信息为“重庆足下” 将学术部的备注信息为 “技高为师,身正为范”
UPDATE deptInfo SET remark = '重庆足下'
UPDATE deptInfo SET remark = '技高为师,身正为范' WHERE deptName = '学术部’
删除数据行
为什么要删除数据?
使用UPDATE更新数据行
为什么要更新数据?
当数据录入后,发现数据有错误等原因需要进行修改。这
个时候怎样修改呢? 在SQL语句中,提供了UPDATE语句实现数据修改功能。 语法格式如下:
UPDATE <表名> SET <列名 = 更新值> [WHERE <更新条件>]
23
修改整张数据表
在UPDATE的语法中,如果没有WHERE子句,则表示修 改整张表的数据。
插入自动标识列
自动标识列由系统自动产生,所以在增加时不需要手工添加。
INSERT INTO deptInfo(deptName,remark) VALUES ('学术部', '负责教学')
运行效果如:
标识列
设置自动标识列:
13
包含默认值的数据插入
直接使用DEFAULT关键字表示。
INSERT INTO deptInfo(deptName,remark) VALUES (DEFAULT, '负责教学')
相关文档
最新文档