oracle:
drop user user_name cascade;
drop user user_name cascade;
解决方案 »
- SQL server 不停的占用内存??
- 急!!!得到下面结果的sql语句怎么写?谢谢!
- 新手求助:大家帮忙看看这个关系代数用SQL表达的对不对。
- update触发器的问题
- sql 2005 SP2 补丁是怎么安装的??
- 求一个sql语句(更新一个字段内容),谢谢!
- 弱问题
- 数据库间的连接?
- 数据库存储过程与其调用者(数据访问组件或客户端程序)的功能划分
- 请教!我在本地SQLSERVER中建立了一个远程的服务器上的SQLSERVER连接
- 哪里有SQL Server下载,我已经走头无路了.
- 有2个很相似的表,ta,tb,tb比ta多一个列,现在想把a的数据全部导入到tb中,能不能写 select * into tb from ta 类似的语句?
drop掉用戶啟不是什麼都沒了.
而貼主只想drop掉所有用戶表啊.
如果你是SQL Server,
那麼有一種很好的方法
能讓你drop掉所有的用戶表
並且保留其他的數據庫object方法如下(在Query Analyzer中執行):
declare @table_name varchar(8000)
declare @drop_table varchar(8000)
set @table_name = ' '
select name into #temp_1 from sysobjects where xtype = 'U'
update #temp_1 set @table_name=@table_name+','+name from #temp_1
set @table_name = substring(@table_name,3,len(@table_name))
set @drop_table = 'drop table '+@table_name
exec (@drop_table)
否则的话要用从USER_TABLES里拿出所有的表名,再一段循环来做,太麻烦
SQL> SET PAGES 999
SQL> SELECT 'DROP TABLE ' || TABLE_NAME || ' CASCADE;';
然后会返回一串查询结果,是字符串,象这样的:
DROP TABLE MYTABLE1 CASCADE;
DROP TABLE MYTABLE2 CASCADE;
....
把这些结果COPY,然后直接在SQL*PLUS里PASTE, 就能把当前用户所有的表DROP掉了.
SQL> SELECT 'DROP TABLE ' || TABLE_NAME || ' CASCADE;'
FROM USER_TABLES;
sql>set pages 999;
sql>SELECT 'DROP TABLE ' bp ' CASCADE;'
FROM bp;
这样对吗?
還是:
SQL> SET PAGES 999
SQL> SELECT 'DROP TABLE ' ¦¦ TABLE_NAME ¦¦ ' CASCADE;'
FROM USER_TABLES;然後將運行出來的結果
copy出來運行一遍.
运行后它叫我输入 BRVBAR的值,我该输什么啊?
SQL> SELECT 'DROP TABLE '||TABLE_NAME||' CASCADE;' from user_tables;
ERROR 位于第1行:
ORA-00950: 无效DROP选项
或者是:
ERROR 位于第1行:
ORA-00972:标识过长
第一次上传||,CSDN会变成中文的制表符(大概),然后直接从屏幕上COPY下来再上传一次,就变成了¦¦,所以每次要修改一下. 不知道为什么.
TO jackyliu(自由):
你把第一次返回的结果贴几行出来看看
DROP TABLEDDEVICETYPE CASCADE;
DROP TABLEDERRORMSG CASCADE;
DROP TABLEDICONS CASCADE;
DROP TABLEDLOOKUPITEMS CASCADE;
DROP TABLEDMAPLAYERS CASCADE;
DROP TABLEDOCTANTMENU CASCADE;
DROP TABLEDVEHICLETYPE CASCADE;
DROP TABLEDYAXUNMENU CASCADE;
DROP TABLEHBUSINESSINFORMATION CASCADE;
DROP TABLEHCLIENTAPPEAL CASCADE;
DROP TABLEHDISPATCHVEHICLE CASCADE;
DROP TABLEHDRIVER CASCADE;
DROP TABLEHDRIVERLOGIN CASCADE;
DROP TABLEHMESSAGERECEIVED CASCADE;
DROP TABLEHMESSAGESENT CASCADE;执行后返回的结果就是这样.
DROP TABLE DCOMPANYINFO CASCADE;
DROP TABLE DDEVICETYPE CASCADE;
DROP TABLE DERRORMSG CASCADE;
......
DROP TABLE DCOMPANYINFO CASCADE;
*
ERROR 位于第1行:
ORA-00905: 缺少关键字
......
SELECT 'DROP TABLE ' || TABLE_NAME || ' CASCADE CONSTRAINTS;' FROM USER_TABLES;
加CASCADE CONSTRAINTS的意思是删除连带的外键。如果你不需要的话,就直接用:
SELECT 'DROP TABLE ' || TABLE_NAME || ';' drop table这类是最基本的sql语法,到处可以查得到的
我后来也试过了加 CONSTRAINTS 但又拿不准所以多问了一句.再次感谢!