我正在尝试剥离其当前 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
最佳答案
你试过了吗:
ALTER TABLE dbo.<table>
ALTER COLUMN <column>
DROP ROWGUIDCOL;
如果您要精通通过脚本更改表格(这是一个好主意,因为它是源代码可控的,比使用 UI 更可重复且更不容易出错),我会将 ALTER TABLE topic in Books Online 加入书签。 .
关于sql-server - 如何删除 PK 列/键上的 ROWGUID 指定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2066696/