有沒有辦法從主鍵中刪除一列?我不是在談論Alter
主鍵約束。我只想使用T-SQL腳本從主鍵釋放一列。我可以通過右鍵單擊列名來修改列。但不能使用T-SQL Script來完成相同的任務。有沒有想法如何完成這項任務?如何使用T-SQL腳本更改SQL Server中的主鍵列?
0
A
回答
0
您可以使用T-SQL完成此操作。假設你的表名是branch
。
查詢
SELECT name
FROM sys.key_constraints
WHERE [type] = 'PK'
AND [parent_object_id] = Object_id('dbo.branch');
結果
'PK_Branch'
現在,我們使用該結果在另一個查詢到:
所以首先我們將使用下面的查詢獲取主鍵約束的名字放下主鍵。該查詢將從branch
表中刪除主鍵。
查詢
ALTER TABLE dbo.branch
DROP CONSTRAINT PK_Branch
+0
只要**沒有其他表**引用'dbo.branch',就可以工作。如果您有引用它的表(通過外鍵),那麼您必須首先刪除所有引用外鍵,放棄主鍵並重新創建它,然後重新創建所有引用外鍵的引用。 –
+0
是的,你是對的! –
0
即使使用Management Studio,刪除並重新創建Index
也是唯一的方法。
從Management Studio中,右鍵單擊一個表,選擇「設計」並查看「接口」。在進行一些更改之後,在保存更改之前,右鍵單擊表格設計並選擇「生成更改腳本...」,您將看到「管理工作室」在「幕後」執行的操作。 它實際上是放置表,使用新的更改重新創建它並將數據添加回表中。
相關問題
- 1. 在SQL Server更改主鍵列
- 2. 如何更改SQL Server中主鍵的列長度?
- 3. 更改SQL Server 2005中的主鍵值
- 4. TSQL:如何在sql server中更改數字列時轉換值?
- 5. SQL Server:如何使用更改跟蹤列出更改的列?
- 6. SQL Server - 無主鍵生成腳本
- 7. 如何列出SQL Server表的主鍵?
- 8. SQL Server更改主鍵數據類型
- 9. SQL Server將主鍵更改爲不同的[新]列並更新外鍵引用
- 10. SQL Server 2008:使用主鍵更新表
- 11. 如何更改grails中的主鍵列?
- 12. SQL Server使用標識和主鍵腳本化數據庫
- 13. Powershell更改SQL Server的備份腳本
- 14. 如何在tsql中運行SQL腳本
- 15. 如何更改SQL Azure上的主鍵
- 16. 在SQL Server類型爲int的更改列中鍵入文本
- 17. SQL Server BIDS主鍵列
- 18. 如何在從SQL Server SMO腳本表中更改表名稱
- 19. SQL Server Mangement Studio更改腳本(2005)
- 20. 刪除SQL Server 2008中的主鍵列
- 21. SQL Server用新的主鍵插入表數據腳本
- 22. 如何使用TSQL檢查數據庫的SQL Server版本?
- 23. 如何使用NHibernate更改主鍵
- 24. 的SQL Server:主鍵
- 25. SQL Server從表中選擇主鍵包含多列的主鍵
- 26. 使用tsql的Linux腳本
- 27. 使用主鍵更新SQL Server中的外部表
- 28. 使用SQL Server更新序列的腳本
- 29. 使用腳本更改SQL Server身份驗證模式
- 30. 如何從Microsoft SQL Server Management Studio中執行的TSQL腳本中刪除'進入'?
刪除並重新創建'Index'是唯一可能的方式 –
這是不是正確的方式?因爲我可以使用管理工作室刪除主鍵。 –
也許這個工作室正在根據@Prdp提到的內容做些什麼。 –