数据库删除语句delete用法(数据库删除语句delete删除多行)

数据库删除语句delete用法(数据库删除语句delete删除多行)

扫码添加渲大师小管家,免费领取渲染插件、素材、模型、教程合集大礼包!

大家好,今天来介绍数据库删除语句delete用法的问题,以下是渲大师小编对此问题的归纳和整理,感兴趣的来一起看看吧!

数据库删除语句

数据库删除表语句有:delete语句用于删除表中的行。delete语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除陪拿操作作为事务记录在日志中保存。drop(删除表):删除内容和定义,释放空间。truncate(清空表中的数据):删除内容、释放空间但不删芦厅搭除定义(保留表的数据结构)。

数据库删除表语句有:

1、delete 语句用于删除表中的行。delete语句执行删除的过程是每次从表中删除一行,并且同时将该行的删除操作作为事务记录在日志中保存。

2、drop (删除表):删除内容和定义,释放空间。简单来说就是把整个表去掉。以后要新增数据是不可能的,除非新增一个表。

3、truncate (清空表中的数据):删除内容、释放空间但不删除定义(保留表的数据结构)。与伏芦drop不同的是,只是清空表数据而已。

数据库删除语句delete用法(数据库删除语句delete删除多行)

SQL实战新手入门:删除数据DELETE语句(1)

   删除数据 DELETE语句( )

  删除不需要的信息与一开始时录入这些信息同等重要 在LIBRARY数据库的例悉扮子中 可能丢失或出售了一本图书 那么这本图书的信息也就无须再保存在数据库中 SQL提供了DELETE语句用于处理删除记录的情形 要删除一个表中的所有记录 可以使用下面的语句

  DELETE FROM myLibrary;

  在一些RDBMS中 无须使用FROM关键字 只需要给出表名即可 但某些RDBMS则坚持要求使用FROM关键字 执行上面的DELETE语句之后 表中的记录将被全部删除 在数据库中只剩下一个空表 读者可以从 wrox 或者 agilitator 下载相同的INSERT脚本 重新填充表中的记录

  删除的记录还可以恢复吗?这要视情况而定 为了取消对RDBMS中数据执行的操作 必须在一个事务上下文中执行所有操作 最后 要么提交所有的更改(使之永久化) 要么回滚这些操作(将数据恢复为初始状态) 第 章将讨论关于事务支持的问题

  如果将DELETE语句与之前介绍过的WHERE子句结合 就可以使删除操作具有更多的选择性 要删除特定的记录集合 只需要在WHERE子句中定义删除记录的标准 下面的查询将不加区分地删备粗除满足WHERE子句中删除条件的所有记录

  DELETE FROM myLibrary

  WHERE publisher = Wiley ;

  执行上面的DELETE语句之后 将删除表中所有由Wiley出版社出版的图睁滚灶书 但这也许并不是我们需要的操作 如何才能从表中成百上千的记录中删除一条特定的记录呢?这就需要指定一组匹配条件 使得满足所有条件的记录在表中是唯一的 例如下面的例子

  DELETE FROM myLibrary

  WHERE publisher = Wiley AND pages = ;

  这样的筛选条件一定是唯一的吗?实际上 尽管可能性不大 但对于一个较大的数据库来说 存在一条以上的记录同时满足以上两个条件也并非不可能 更好的办法是使用ISBN号 因为它是唯一的

  DELETE FROM myLibrary

  WHERE i * n= ;

  如果记录中不存在一个可作为唯一标识的标志 又该如何处理呢?有其他几种办法可以确保一条记录在表中的唯一性(请参见第 章和第 章) 但这里先介绍一个特殊列的概念 与其他列相比 特殊列的作用是唯一地标识表中的一条记录 也称为主键 假如在将记录输入到表中时已经对这些记录进行了编号 那么这些编号就是引用特定记录的一个简便的办法 假如特殊列不允许出现重复的编号 那么在删除单条记录时就不存在歧义 遗憾的是 定义这样的列需要修改表的结构

   试一试删除表中的记录

  下面将删除Microsoft SQL Server 创建的表中的某些记录 请先重复本章第一个 试一试 练习中步骤( )到步骤( )的操作 以便为输入并执行SQL命令做好准备工作

  ( ) 下面的查询将删除MYLIBRARY表中的所有记录

  USE library;

  DELETE myLibrary

  ( row(s) affected)

  ( ) 单击位于上方工具栏中的Execute按钮 如之前的图 所示

  ( ) 重新插入下面的记录

  USE library;

  INSERT INTO myLibrary (title author book_language publisher pages author

   publish_date i * n)VALUES ( SQL Bible Alex Kriegel English Wiley

   Boris M Trukhnov April )

  INSERT INTO myLibrary(title author book_language publisher pages publish_date

  i * n) VALUES ( Microsoft SQL Server Weekend Crash Course Alex Kriegel

   English Wiley October )

  INSERT INTO myLibrary(title author book_language publisher pages publish_date

  i * n) VALUES ( Mindswap Robert Sheckley English Orb Books May

   )

  INSERT INTO myLibrary(title author book_language publisher pages publish_date

  i * n) VALUES ( Jonathan Livingston Seagull Richard Bach English MacMillan

   )

  INSERT INTO myLibrary(title author book_language publisher pages publish_date

  i * n) VALUES ( A Short History of Nearly Everything Bill Bryson

   English Broadway October )

返回目录 SQL实战新手入门

编辑推荐

Oracle索引技术

高性能MySQL

lishixinzhi/Article/program/SQL/201311/16480

SQL实战新手入门:删除数据DELETE语句(2)

    删除数据 DELETE语句( )

  ( ) 单击上方工具栏中的Execute按钮 如之前的图 所示谈逗枣

  ( ) 删除一组满足指定匹配条件的记录 删除不是Wiley出版社出版的图书 输入下面的SQL语句 并单击Execute按钮

 含拆 DELETE myLibrary

  WHERE publisher Wiley ;

  ( row(s) affected)

   示例说明

  提交给数据库引擎的SQL命令指示数据库删除MYLIBRARY表中的所有记录 执行该命令将从数据库中删除 条记录 为了继续练习 必须重新插入这些记录 使MYLIBRARY表中具有可用的数据

  步骤( )演示了如何根据查询的WHERE子句中指定的条件选择性地从MYLIBRARY表中删除某些记录 在MYLIBRARY表的 条记录中 只有满足删除条件WHERE publisher Wiley 的 条记录被删除

  要在表中添加一个新列 一种办法就是先删除整个表 然后再从头开始创建一个包含新列的表 实际上 在很长一段时间内 这都是很多RDBMS添加新列的唯一办法 现在 只需要修改表 插入一个新列即可(或者就修改列而言 也可以移除一个列) 尽管修改表的语法比较复杂 而且不同RDBMS之间存在显著的差别 但基本的语法却非常简单

  ALTER TABLE myLibrary

  ADD COLUMN book_id INTEGER;

  上面的语句将向MYLIBRARY表中添加一个空列 该列的数据类型为INTEGER(对于计算机而言 它最擅长理解的就是数值 实际上计算机能理解的也就只有数值) 人类可读的所有字符 声音和图片在计算机内部都是以长长的二进制数值来表示的 和 构成的序列 要将数据添加到新列中 必须使用UPDATE语句 本章 节将专门介绍该语句

  对于添加新列 某些RDBMS可能会具有显著不同的语法 例如 Microsoft SQL Server的ALTER语句中不需要使用COLUMN关键字 该语句本身就可以推断出需要添加什么 因此在SQL Server中 上面的指宽语句将是

  ALTER TABLE myLibrary

  ADD book_id INTEGER;

  要从表中删除不需要的记录也非常简单 只需要使用DROP语句即可

  ALTER TABLE myLibrary

  DROP COLUMN book_id;

  删除一个列时 只要知道该列的列名和包含该列的表名 无须知道数据类型 也无须有任何其他的限定符 当修改一个表的结构时 需要考虑一下它所造成的后果 特别是当表非空或者列已经被数据库中的其他表使用时 请参考本书第 章 第 章和第 章的相关内容

  请注意DELETE语句与DROP语句的区别 使用DELETE语句可以删除表中的数据 而使用DROP语句将销毁数据库对象 例如表 视图 存储过程或数据库本身 在第 章中将介绍 这两个语句属于SQL语言的不同分支 它们分别属于数据操作语言和数据定义语言

返回目录 SQL实战新手入门

编辑推荐

Oracle索引技术

高性能MySQL

lishixinzhi/Article/program/SQL/201311/16479

sql中如何使用DELETE语句删除表中的行

1、sql中使用DELETE 语句删除表中的行。按条件删除数据的基本语法是“DELETE FROM 表名称 WHERE 列名称 = 值”,这里以学生表举列,学生有姓名(name)和年龄(age)两列:

2、首先需要笑备猜查询张三的数据,输入sql语句“SELECT * FROM student WHERE `name` = '张三'”,即可查询到张三的数据:

3、然后输入删除碰型滚让学生张三数据的sql语句“DELETE FROM student WHERE `name` = '张三'就删除成功了:

分享到 :
相关推荐

路由器中继设置教程(路由器中继设置教程192.168.1.1)

1、路由器中继设置教程路由器中继设置教程路由器中继是一种扩展网络覆盖范围的方法,[&...

dart语言都能开发什么(java和kotlin哪个更值得学)

1、dart语言都能开发什么Dart语言是一种由谷歌开发的现代化编程语言,主要用于[...

windows中如何使用GPIO(gpio口和普通io口有什么区别)

1、windows中如何使用GPIOWindows操作系统通常用于个人电脑和服务器[...

云开发后端怎么实现(程序开发前端和后端的区别)

1、云开发后端怎么实现云开发后端实现是指通过云服务提供商提供的服务器资源和功能来搭[...

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注