如何删除PK列/密钥上的ROWGUID指定

时间:2010-01-14 18:55:42

标签: sql-server tsql

我正在尝试剥离其当前UID pks的数据库(同时保留列),作为将使用所有int键的转换过程的一部分。

SSMS 2008(SQL Express 2008) - 最初在SQL 2000中创建的数据库 如果有帮助,还会安装SQL 2008 full。

许多表格都有 UID pk ROWGUID =是

似乎ROWGUID指定仅在KEY属性中找到。我可以将其关闭,但我想将作为脚本的一部分。如果我在键或索引上执行SCRIPT TO,我没有看到任何指示该列是rowguid的内容。

在丢弃PK并且SSMS中不再显示密钥和索引后,SMO仍然将该列视为rowguid。

我是TSQL白痴,所以请随意慢慢说话并使用小词; - )

指导赞赏。 TIA

1 个答案:

答案 0 :(得分:7)

你有没有尝试过:

ALTER TABLE dbo.<table>
  ALTER COLUMN <column>
  DROP ROWGUIDCOL;

如果你准备好通过脚本改变表格(这是一个好主意,因为它是源可控制的,更可重复,并且比使用UI更不容易出错),我将{{ {3}}