数据库技术-杭州电子科技大学10#-第10章-插入-删除-更新数据.ppt_第1页
数据库技术-杭州电子科技大学10#-第10章-插入-删除-更新数据.ppt_第2页
数据库技术-杭州电子科技大学10#-第10章-插入-删除-更新数据.ppt_第3页
数据库技术-杭州电子科技大学10#-第10章-插入-删除-更新数据.ppt_第4页
数据库技术-杭州电子科技大学10#-第10章-插入-删除-更新数据.ppt_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

1、第10章 修改数据,插入数据 删除数据 更新数据,插入数据,用 Values 子句插入一行数据 插入部分数据 使用列缺省值插入数据 使用 INSERTSELECT 语句 使用 SELECT INTO 语句创建表,用 Values 子句插入一行数据,使用字段列表指定用于保存新数据的列 指定相应的值列表 只能插入一行数据,USE SampleDB INSERT students (studid, studname, age, address,phone,email) VALUES (0001,Peter,20,杭州市文一路65号,88809132, ) GO,插入部分数据,如果列具有 IDENTI

2、TY 属性、有缺省值或允许空值,就可以在 INSERT 语句中忽略该列,SQL Server 将自动插入该值。 只需列出正为 INSERT 语句提供数据所在列的名 通过输入 NULL 来输入空值,插入部分数据(续),INSERT students (studid, studname, age, phone) VALUES (0002,zhangsan,20,88809123) GO,INSERT students VALUES (0003,Tom,21,null,null,) GO,示例 1,示例 2,列出需要的列名,用null表示空值,使用列缺省值插入数据,DEFAULT 关键字,INSER

3、T students (studid, studname, age, address,phone,email) VALUES (0004,Jack,19,default,null,J) GO,使用default默认值,使用 INSERTSELECT 语句,所有满足 SELECT 语句的行都被插入最外层 确保数据类型是兼容的 确定是否存在缺省值,或所有被忽略的列是否允许空值,USE northwind INSERT INTO customers SELECT substring(firstname, 1, 3) + substring (lastname, 1, 2) ,lastname, fi

4、rstname, title, address, city ,region, postalcode, country, homephone, NULL FROM employees GO,该表必须事先存在,使用 SELECT INTO 语句创建表,可使用 SELECT INTO 语句创建一个表并在同一操作中往表里插入行,USE northwind SELECT productname AS products ,unitprice AS price ,(unitprice * 1.1) AS tax INTO pricetable FROM products GO,使用 SELECT INTO

5、语句创建表(续),USE northwind SELECT productname AS products ,unitprice AS price ,(unitprice * 1.1) AS tax INTO #pricetable FROM products GO,可以创建局部的或全局的临时性表 仅对当前的用户连接是可见的,当用户实例断开连接时被自动删除 任何用户都是可见的,当所有引用该表的用户断开连接时被自动删除,第10章 修改数据,插入数据 删除数据 更新数据,删除数据,使用 DELETE 语句 使用 TRUNCATE TABLE 语句,使用 DELETE 语句,SQL Server 将

6、删除所有的行,除非在 DELETE 语句中加入 WHERE 语句 每个被删去的行都被存入事务日志记录中,USE SampleDB DELETE students WHERE studid 0003 GO,举例:删除学号0003以下的同学。,使用 TRUNCATE TABLE 语句,SQL Server 删除表中所有的行,但保留表的结构和与之相关的对象 如果表中有 IDENTITY 列,TRUNCATE TABLE 语句会重新设置原始数据,USE SampleDB TRUNCATE TABLE students GO,使用 TRUNCATE TABLE 语句(续),DELETE 与 TRUNCA

7、TE TABLE 的比较 TRUNCATE TABLE 在功能上与不带 WHERE 子句的 DELETE 语句相同:二者均删除表中的全部行。 TRUNCATE TABLE 比 DELETE 速度快,且使用的系统和事务日志资源少。因为 DELETE 语句每次删除一行,而TRUNCATE TABLE 通过释放存储表数据所用的数据页来删除数据。 对于IDENTITY列,使用DELETE将保留标识计数值 ,而使用TRUNCATE TABLE 将重新计数。,第10章 修改数据,插入数据 删除数据 更新数据,更新数据,更新数据 根据表中数据更新行 根据其他表更新行,更新数据,语法 UPDATE 表名|视图

8、名 SET 列名 = 表达式|DEFAULT|NULL FROM 相关表|相关视图 WHERE ,根据表中数据更新行,每次只能修改一个表中的数据 可以同时把一个或多个列、变量放在一个表达式中,USE northwind UPDATE products SET unitprice = (unitprice * 1.1) GO,举例:把 Northwind 的产品单价全部增加10%。,根据其他表更新行,使用 FROM 子句可将数据从一个或多个表或视图拉入要更新的表中。,USE pubs UPDATE titles SET price = price * 2 FROM titles INNER JOIN publishers ON titles.pub_id = publishers.pub_id AND pub_name = New Moon Books GO,举例:由 New Moon Books 出版的所有书籍的价格加倍。,根据其他表更新行(续),使用子查询指定要更新的行,举例:由 New Moon Books 出版的所有书籍的价格加倍。,USE pubs UPDATE titles

温馨提示

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

评论

0/150

提交评论