gpt4 book ai didi

sql - 更改 SQL 数据库的主键

转载 作者:行者123 更新时间:2023-12-03 03:19:49 24 4
gpt4 key购买 nike

我有一个使用 SQL Server 迁移助手从 MySql 迁移的数据库,它现在存储在 Azure 中。

SSMA 显然为其中一个表生成了一个名为 ssma$rowid 的新主键列。我尝试将 PK 更改回 Card_Key,但收到以下错误:

An error was encountered while applying the changes.
An exception occurred while executing the Transact-SQL statement:
ALTER TABLE [carddb].[Cards] ALTER COLUMN [Card_Key] INT NOT NULL.
The index 'Card_Key' is dependent on column 'Card_Key'.
ALTER TABLE ALTER COLUMN Card_Key failed because one or more objects
access this column.

如何让 Card_Key 再次成为 PK?

最佳答案

最简单的方法可能是使用正确的主键创建一个新表 [cards2],并将数据从 [cards] 复制到新表中(只需运行 INSERT INTO cards2 ... SELECT ... FROM cards)。完成后,您可以删除(或为了安全起见重命名为 [cardsold])原始表 [cards],并将新表重命名为 [cards]: sp_rename cards2, cards

这应该有效。

关于sql - 更改 SQL 数据库的主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13789679/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com