当前位置:数据库 > Oracle >>

oracle数据库怎样删除所有表中的某列值为1的数据?

oracle数据库中有N多表,每个表中均有sfsx(是否生效)列,怎样删除所有表中的sfsx=1的所有数据?
答案:我教你一招:

sqlplus 用户名/口令@数据库别名
set heading off
set pagesize 0
select 'delete from  ' || table_name || '  where sfsx=1;' from user_tables;
spool c:\del.sql
/
spool off
@c:\del.sql
exit
其他:另外还可以有个办法,建立在你对数据库非常清楚的前提下
不管什么数据库表名、字段名、索引名、主键名、用户数据库状态等信息都会写在master库中,在这个库中你可以取得所有表名,通过查询指定系统表产生指定条件的删除语句的查询结果,你另存出来就可以直接执行了。 

上一个:求oracle的视屏教程,我是初学者。
下一个:Oracle 的 ERP 客户端中文都是问号。如图,请问怎么设置可以设回来。有这种经验的朋友吗?

Oracle
MySQL
Access
SQLServer
DB2
Excel
SQLite
SYBASE
Postgres
如果你遇到数据库难题:
请访问www.zzzyk.com 试试
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,