批量删除sql
❶ sql批量删除表的命令是
这个是别人提供的一个代码,是删除以test开头的表,自己更改下条件就可以了可以试试看
declare @name varchar(20)
while(exists(select * from sysobjects where name like 'test%'))
begin
select @name=name from sysobjects where name like 'test%'
exec ('drop table '+@name)
end
❷ SQL批量删除表语句
如果用sql中的delete语句,delete语句一次只能删除一张表。批量删除多张表只能写多条delete语句,或者用楼上的方法;
❸ SQL的批量删除,DELETE语句
楼上是正解,如果你会用sqlserver的话直接右键点你要修改的表,打开表里选择查询,然后把命令输入进去,就可以了。
❹ sql怎么删除一个表中的所有数据
删除表数据有两种方法:delete和truncate。具体语句如下:
一、RUNCATE TABLE name :
删除表中的所有行,而不记录单个行删除操作。在这个指令之下,表格中的资料会完全消失,可是表格本身会继续存在。
TRUNCATE TABLE 的语法:TRUNCATE TABLE name ,参数 name 是要截断的表的名称或要删除其全部行的表的名称。
二、Delete from tablename where 1=1
1、delete语法:
DELETE FROM 表名称 WHERE 列名称 = 值。
2、删除所有行:
可以在不删除表的情况下删除所有的行。这意味着表的结构、属性和索引都是完整的:DELETE FROM table_name。
(4)批量删除sql扩展阅读:
truncate和delete的共同点及区别:
1、 truncate和 delete只删除数据不删除表的结构(定义) 。
2、delete语句是dml,这个操作会放到rollback segement中,事务提交之后才生效;如果有相应的trigger,执行的时候将被触发。
truncate是ddl, 操作立即生效,原数据不放到rollback segment中,不能回滚. 操作不触发trigger。
3、delete语句不影响表所占用的extent, 高水线(high watermark)保持原位置不动 。truncate 语句缺省情况下见空间释放到 minextents个 extent,除非使用reuse storage; truncate会将高水线复位(回到最开始)。
4、速度,一般来说: truncate >delete 。
❺ 关于批量删除的sql语句(where另一个表)
delete from info join user where info.userid <> user.id
❻ sql命令删除id用SQL语句批量删除指定ID
delete
from documents
where ID > 5000
❼ SQL如何直接批量删除表
SQL直接批量删除表的方法步骤:
所需工具原料:phpmyadmin。
1.数据操作前进行数据备份。
4.打开文本框中输入命定执行:
deletefromwp_postswhere`post_date`>='2010-01-0100:00:00'and`post_date`<'2014-12-1422:00:00:00'。
【命令语句意思】:从wp_posts数据表的post_date字段中检索文章创建日期在2010年1月1日0时和2014年12月14日22时之间的数据进行删除操作。
5.成功后点击上部“浏览”按钮查看,表被删除,sql执行语句成功。
删除指令解析:
1.全部删除:deletefromtable。
2.部分删除:deletefromtableawherenuidin(selectnuidfromtableB)。
注意事项:
1.进行数据库操作前须要进行数据库备份。
2.数据库操作是删除数据文本,图片等上传文件不会受到影响。
❽ SQL批量删除怎么写
delete 图书表 where 图书名称列 in ('我在学校','读书日志','英语教材')
❾ 怎么使用SQL语句批量删除多个表的相同字段
不知道您用的是什么数据库了。
不过做法肯定是一样,用两个游标,第一个游标从数据字典中检索出所有的表,第二个游标从每个表中检索所有的字段,然后遇到有要和你删除名称相同的字段的时候,执行alter table tablename drop column columnname的操作。
不过这个执行不能直接这么执行,而是设置一个字符串的变量,例如SQLSERVER,需要@delsql = 'alter table ' + @tablename + ' drop column ' + @columnname
exec(@delsql)
而oracle也一样delsql = 'alter table ' + tablename + ' drop column ' + columnname;
execute immediate delsql;
要使用这样的写法。
不可能使用一个SQL直接删除所有的。
❿ sql 如何批量删除列,望长老们帮助!
每个数据库中都有数据字典的表,从这个表中,可以查出表中所有的列名。
你这个可以利用这个。
定义一个游标,取出表中的字段名字。
然后循环体中,逐个判断该列是否为空,不过要利用动态的SQL语法
比如ORACLE,用execute immediate 'select count(*) from table where '||columnname|| ' is not null' into ln_count;
然后判断ln_count如果是0,执行execute immediate 'alter table table1 drop column ' ||columnname.
不知道你的是什么数据库,但是这样的思路,是可以解决你的问题的。