sql游遍循环删除不同表

sql游遍循环删除不同表,第1张

删除表数据有两种方法:delete和truncate。具体语句如下:

一、RUNCATE TABLE name :删除表中的所有行,而不记录单个行删除 *** 作。 在这个指令之下,表格中的资料会完全消失,可是表格本身会继续存在。

TRUNCATE TABLE 的语法:TRUNCATE TABLE name ,参数 name 是要截断的表的名称或要删除其全部行的表的名称。

二、Delete from tablename where 1=11、delete语法:DELETE FROM 表名称 WHERE 列名称 = 值。

2、删除所有行:可以在不删除表的情况下删除所有的行。

这意味着表的结构、属性和索引都是完整的:DELETE FROM table_name。扩展资料: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 storagetruncate会将高水线复位(回到最开始)。

4、速度,一般来说: truncate >delete

list.clear()可以一次性清空所有元素。list.retainAll(Collection c)可以移除所有不在c里的元素,list.removeAll(Collection c)可以移除所有在c里的元素。其它的情况,只好一个个删了。

如果是数据库的话,就必须读出所有想删除的记录,比如你说的“有一个全选按钮,点击了以后都选中了,然后点击删除按钮”,那么服务器后台收到删除按钮发送的那些kh.Kehuid,就将所有这些id都用“,”隔开拼接起来,比如“1,3,4,6”这样一个字符串,然后用类似

DELETE * FROM kehu WHERE Kehuid in (......)

....那里就是这个字符串,就可以批量删除数据库内数据了。但这个其实不是Java的范畴而是SQL的范畴了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10643693.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存