2 u010704330 u010704330 于 2013.12.18 17:54 提问

delete from table_name 和 delete * from table_name 区别?

sql标准中有 delete * from 这样的语句吗?为什么有的数据库可以用 delete * from table_name ?

5个回答

DoctorCZM
DoctorCZM   2013.12.19 09:52
已采纳

delete * from table_name仅仅能删除表中数据,不能清空标识,删除表中数据后再重新写入数据时,标识符会从删除前标识最大加1开始。希望对您有帮助!

DoctorCZM
DoctorCZM 如果是mysql或oracle的话,使用delete from table就可了;delete * from table可用于excel或者access进行数据删除的情况。
4 年多之前 回复
u010704330
u010704330 delete * from table_name 这条语句在数据库中执行会报错的,比如 mysql 或者 oracle ,能详细说下你的意思吗?
4 年多之前 回复
u010704330
u010704330 delete * from table_name 这条语句在数据库中使用会报错的,比如在mysql 或 oracle中使用,能详细说明下你要表达的意思吗?
4 年多之前 回复
cddchina
cddchina   2013.12.18 19:43

没有发现有 delete * from语句。在哪里见到的啊/?

u010704330
u010704330 http://www.w3school.com.cn/sql/sql_delete.asp 你好,我在这个网站上看到的。
4 年多之前 回复
doyouwanna
doyouwanna   2013.12.19 10:26

Microsoft Access的MDB数据库允许用Delete * from……

doyouwanna
doyouwanna 对。微软喜欢搞些特色
4 年多之前 回复
u010704330
u010704330 你好,照你这么说 delete * from ...不是SQL标准 ,delete from table_name 才是?
4 年多之前 回复
u013216917
u013216917   2013.12.19 18:38

DELETE * FROM TABLE 这种是access的写法 带星和不带星是一个意思 都是删除记录,并不是删除表!~ 只不过是不同数据库的不同写法而已!~

u010704330
u010704330 delete * from table_name 这条语句在数据库中执行会报错的,比如 mysql 或者 oracle ,你用的什么数据库?能详细说下你的意思吗?
4 年多之前 回复
caizhige123
caizhige123   2013.12.21 20:49

其他人说都有一定道理,我补充一下,oracle数据库中没有delete * from 表名这样的删除语句,但是存在delete from 表名

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
delete from tablename与drop table tablename区别
delete from tablename:清空一个表内容,但不清空表结构,该表格仍然存在,而且表格中列的信息不会改变 drop table tablename:不但删除表内容,而且使用drop table命令则会将整个数据库表格的所有信息全部删除。
DELETE FROM TABLE_NAME 数据库删除行数据SQL
DELETE FROM TABLE_NAME 数据库删除行数据SQLDELETE FROM TABLE_NAME1 WHERE ID=2DELETE FROM TABLE_NAME2. |DELETE * FROM TABLE_NAME2. 删除TABLE_NAME2表中所有列注:每删除一条会在日志中记录.若论删除效率TRUECATE效率要更高...
mysql中删除表记录delete from和truncate table的用法区别
mysql中删除表记录delete from和truncate table的用法区别: MySQL中有两种删除表中记录的方法,一种是delete from语句,另一种是truncate table语句。 (1)delete from语句可以使用where对要删除的记录进行选择。而使用truncate table将删除表中的所有记录。因此,delete语句更灵活。 (2)如果要清空表
sql server delete from tablename a 提示a附近有语法错误的问题
如题:最近在写sql server 的删除语句时,删除其中一个表,但是条件要关联到另外一张表,自然的要用到别名,但是执行时,提示a附近有语法错误的问题 delete from #ta where exists (select 1 from #tb b where #ta.id=b.id)  上面是可以的,但是如果用了#ta的别名,就不行了,提示 : 'a'附近有语法错误  delete 
如何删除表中所有数据。delete from tablename与Truncate Table tablename 区别
当你不再需要该表时, 用 drop;当你仍要保留该表,但要删除所有记录时, 用 truncate;当你要删除部分记录时(always with a WHERE clause), 用 delete. 有两种方式:1、delete from tablename --写入日志2、Truncate Table tablename --不写入日志下面介绍一下他们的区别:TRUNCATE TABLE删除表中
oracel 批量删除 所有表 及 数据
删除数据:   SELECT 'DELETE FROM '|| table_name || ';' FROM USER_TABLES ORDER BY TABLE_NAME; 删除表: select 'drop table '||table_name||';' from cat where table_type='TABLE'
【批量清空表】“CONCAT”“TRUNCATE”与“information_schema”的使用
【背景】      工作中涉及到经常要为QA同学批量清空表记录,这里记录一下我的操作过程和遇到的问题,最后做一下小结。 【过程】      ①.拼SQL      这个很简单,用“CONCAT”从“information_schema”里面获取“TABLE_NAME”拼成要执行的一句句SQL。 SELECT CONCAT("TRUNCATE TABLE `", t.TABLE_NAME,
【整理】mysql中information_schema.tables字段说明
【整理】mysql中information_schema.tables字段说明   2016-05-04 16:47:50|  分类: 默认分类|举报|字号 订阅        下载LOFTER我的照片书  | 1. 获取所有表结构(TABLES) SELECT  *
select table_name from all_tables where owner='ofbiz';
select table_name from all_tables where owner='dbuser';<br /><br /> select table_name from all_tables where owner='ofbiz';<br /><br /><br />
Truncate table,Delete From table,与Drop table的区别
1  delete table和delete from table的异同    delete table 与delete from table此两条语句没有实质的区别,都是删除表中的记录。     delete from 是标准写法,基本适用所有的数据库,但是delete就不一定了~   2 truncate,delete,drop的异同点 注意:这里说的delete是指