我的問題是,在Oracle中,我們可以使用drop table table_name cascade constraints
來刪除引用的表對象。我如何在SQL Server中實現相同的功能?等效於SQL Server中的drop table table_name級聯約束條件
0
A
回答
0
據我所知在MsSql中沒有一個命令,但可以使用INFORMATION_SCHEMA和動態SQL。
事情是這樣的:
DECLARE @database nvarchar(50)
DECLARE @table nvarchar(50)
set @database = 'MyDatabase'
set @table = 'MyTable'
DECLARE @sql nvarchar(255)
WHILE EXISTS(select * from INFORMATION_SCHEMA.TABLE_CONSTRAINTS where constraint_catalog = @database and table_name = @table)
BEGIN
select @sql = 'ALTER TABLE ' + @table + ' DROP CONSTRAINT ' + CONSTRAINT_NAME
from INFORMATION_SCHEMA.TABLE_CONSTRAINTS
where constraint_catalog = @database and
table_name = @table
exec sp_executesql @sql
END
0
有讓Management Studio中產生改變/滴上依賴對象的所有約束腳本的選項。
相關問題
- 1. oracle drop table級聯約束語句掛
- 2. T-SQL:DROP表級聯約束等效嗎?
- 3. SQL Server條件CHECK約束條件
- 4. SQL Server 2012約束條件
- 5. SQL Server中的條件約束
- 6. SQL Server:刪除表級聯等效?
- 7. SQL Server有條件的外鍵約束
- 8. Sql server drop table not working
- 9. SQL Server:條件級聯
- 10. Sql Server中的DROP CASCADE
- 11. SQL SERVER FK和約束條件
- 12. SQL Server 2008-獲取表約束條件
- 13. 的Oracle 11g SQL禁用的外鍵約束和drop table
- 14. SQL Server約束
- 15. 條件子句DROP TABLE
- 16. 級聯優先約束SSIS
- 17. 列的SQL約束條件
- 18. 在sql server中的列級別與表級約束? a。
- 19. 什麼是'CREATE TABLE ... LIKE ...'在SQL Server中的等效內容
- 20. 與Oracle的DESCRIBE [table]等效的Oracle和/或SQL Server?
- 21. SQL Server - 約束
- 22. SQL Server中的drop table和delete table有什麼區別?
- 23. SQL Server中電話號碼的約束條件
- 24. SQL Server TOP約束
- 25. 在SQL Server中啓用所有可能的約束條件
- 26. SQL Server 2005,強制實施外鍵約束和級聯刪除
- 27. Oracle_CX ALTER TABLE刪除約束
- 28. 在包含case語句的SQL Server中創建約束條件
- 29. 在SQL Server 2008中檢查約束條件
- 30. SQL Server的檢查約束
謝謝底馬的答案,但我想,如果有可能的工具爲單行。如果有任何線索,你會找到我。 – yayayokoho3 2011-06-01 09:31:10
您可以從此代碼創建存儲過程,並將其用作單行工具:) – demas 2011-06-01 09:33:44
當然,您的建議很好。如果我們真的沒有任何MSSQL的單行SYNTAX,我認爲我們沒有選擇,而不是你所建議的。再次感謝你。 – yayayokoho3 2011-06-02 04:15:38