A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李嫒 中级黑马   /  2012-6-26 16:58  /  5976 人查看  /  19 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

这两个貌似都可以,搜索的百度回答的太复杂了。。。看的云里雾里。。。。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

19 个回复

倒序浏览
1,SQL中的DELETE主要删除某张表中的局部性数据 如表中的某一元组 ;
2,DROP一般用于删除整体性数据 如表,模式,索引,视图,完整性限制等, 例如删除某张表采用drop命令。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
DELETE  是有条件的删除表中的数据,如果不写条件,全表删除,而删除后,表仍然存在,仍可以对表进行操作。具体语法为DELETE FROM TABLE WHERE 条件。
同样,还有一个TRUNCATE TABLE TABLENAME语句,是全表不提交删除,也是删除数据,表仍然存在。

DROP TABLE,是从数据库中删除表。删除后,表结构不在存在,无法再对该表进行任何操作。

举个通俗的例子,比如你有一个水桶,桶里装着水。
而DELETE或者TRUNCATE,只是相当于把水倒掉,而桶仍然存在。
而DROP TABLE,则相当于把桶都扔掉了。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
简单点解释:
delete 只删除表格中的数据,表格还是存在的
drop 是将整个表以及表中数据全部删除.

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
一句话,del只删表里的内容,drop删除整个表,这个表就没有了

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
delete只是删除表里的数据,表本身还在
drop是直接将整个表都删了

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
delete删除表里的数据
drop是删除表、索引、视图等非表内数据的东西
总之,删表中的数据就用delete,删除其他的就用drop

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
drop简单的来说就是针对表的,而delect是针对数据的,delect可以删除表中的数据,drop能删除整个表!

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
一般来说在程序里面不用drop,delect是最常用的

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
视频教程有讲
Drop 删除表    drop  table_name
Delete删除数据 delete from table_name where ***
还有 楼上秦永辉朋友 你拼写错了。。。两个帖子都拼错了。。。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
DROP 字面上理解 “丢了” 删除整个表,
delete 删除一些数据 整个表依然存在着

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
drop移除表,delete删除表数据,就这样,很好理解。drop就是表没了,delete就是表中的数据没了

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
drop可用于删除表,数据库等,删掉后表和数据库就没了;而用delete删除表,或者表中某一项,只是删掉了数据值,表的结构不发生变化,表格,列依然存在;

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
你要记住,drop的概念比delete的概念要大,即空间上的,delete可以读一个表中的部分内容进行删除,而drop则是针对的是一个表,甚至是一个数据库
例如:delete from table1 where name="Tom" 这是删除table1中的name字段中Tom的信息,
        drop table1 b别管后面有什么,或者没有什么,这句话直接可以看做这个table1表已经被删除了

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
个人理解:
   在sqlserver中
   drop 是用来删除  数据库(database)、整张数据表(table)、视图(view)
   delete 只是用来删除 存储在数据表(table)中的 每一行数据的
   相当来说 drop 是针对 整体来说的 而delete是针对局部而讲的
   希望对你有帮助

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
楼主感觉他俩没区别,是因为觉得这两个关键字的功能都是删除
但实际上,这两个关键字能删除的东西可是大大不同

drop可以删除表,数据库和索引
delete可以删除表中的一行数据

我在加一条删除语句
ALTER TABLE 语句可以在已有的表中添加、修改或删除列

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
drop  主要是删除模式 表 列  索引删除以后就不存在了
delete 主要是删除表中的元组

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
DELETE - 从数据库表中删除数据,属于数据操作语言 (DML);DROP TABLE - 删除表,属于数据定义语言 (DDL)。、
通俗点理解,DELETE是删除表数据,而表结构依然在;而DROP是删除表结构,当然连数据也一块被删了啊。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
delete  是有条件的删除表中的数据元素。具体语法为DELETE FROM TABLE WHERE 条件。

drop 删除表整体  删除后,表结构不在存在,无法再对该表进行任何操作。

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
delete主要删除表中的某行或多行数据,drop主要对表,表的约束,表的列,数据库做删除
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马