数据库删除语句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` = '张三'就删除成功了:

分享到 :
相关推荐

java三元运算符怎么用

java三元运算符怎么用Java是一种面向对象的编程语言,具有强大的表达能力和灵活[...

声音管理器怎么隐藏(如何把音频管理器的图标去掉啊苹果手机)

大家好,今天来介绍声音管理器怎么隐藏的问题,以下是渲大师小编对此问题的归纳和整理,感...

vue全局变量怎么定义(vue中怎么定义全局变量和全局函数)

1、vue全局变量怎么定义Vue.js是一个流行的JavaScript框架,用于构[...

微前端框架哪个好(java微服务框架比较)

1、微前端框架哪个好微前端框架是近年来前端开发领域的热门话题,它可以帮助开发团队更[...

发表评论

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