--sql刪除資料庫中所有使用者資料表外來鍵
--查詢刪除前的當前資料庫所有約束
select * from information_schema.key_column_usage
declare @tablename nvarchar(250)
--宣告讀取資料庫所有資料表名稱游標mycursor1
declare mycursor1 cursor for select name from dbo.sysobjects where objectproperty(id, 'isusertable') = 1
--開啟游標
open mycursor1
--從游標裡取出資料賦值到我們剛才宣告的資料表名變數中
fetch next from mycursor1 into @tablename
--如果游標執行成功
while (@@fetch_status=0)
begin
--定義當前外來鍵約束變數
declare @constraintname varchar (200)
--刪除當前資料表的所有外來鍵約束
--宣告讀取資料表所有外來鍵約束名稱游標mycursor2
declare mycursor2 cursor for select name from dbo.sysobjects where xtype = 'f' and parent_obj = (select [id] from dbo.sysobjects where id = object_id(n'['+@tablename+']') and objectproperty(id, n'isusertable') = 1)
--開啟游標
open mycursor2
--從游標裡取出資料賦值到外來鍵約束名稱變數中
fetch next from mycursor2 into @constraintname
--如果游標執行成功
while (@@fetch_status=0)
begin
--刪除當前找到的外來鍵
exec ('alter table '+@tablename+' drop constraint '+@constraintname)
--print 'alter table '+@tablename+' drop constraint '+@constraintname
--用游標去取下一條記錄
fetch next from mycursor2 into @constraintname
end
--關閉游標
close mycursor2
--撤銷游標
deallocate mycursor2
--用游標去取下一條記錄
fetch next from mycursor1 into @tablename
end
--關閉游標
close mycursor1
--撤銷游標
deallocate mycursor1
--查詢刪除後的當前資料庫所有約束
select * from information_schema.key_column_usage
sql server 刪除資料庫中所有表資料
1.清空所有資料表中的記錄 exec sp msforeachtable command1 truncate table 2.刪除所有資料表 exec sp msforeachtable delete n 如果出現 資料表中有各種約束,就不能使用上面的方法來刪除資料了,只能使用以下方式 建立自定義儲...
如何刪除壞的使用者資料庫
當使用drop database無法刪除資料庫時,使用本文所示方法可以刪除。1 使用isql以sa註冊sql server 2 設定允許修改系統表 1 sp configure allow updates 1 2 go 3 把 要刪除的使用者資料庫置為 suspect 狀態 1 use master...
刪除使用者 資料庫 及表空間
gps平台 建設 軟體開發 系統運維,找森大網路科技!來自森大科技官方部落格 始 執行 cmd,然後輸入sqlplus as sysdba 連上資料庫 2 刪除使用者 在dos視窗輸入drop user eqm cascade 要打分號 3 刪除tablespace 在dos視窗輸入drop tab...