2011-11-25 49 views
1

今天,我在SQL Azure门户中创建了一个新表,默认情况下有Id INT列。SQL Azure - 无法更改列类型

Id (int , PK , Not Null)

当我试图将其更改为BIGINT它给了我下面的错误:

An error was encountered while applying the changes.An exception occurred 
while executing the Transact-SQL statement: 
ALTER TABLE [dbo].[PerformanceData] 
ALTER COLUMN [Id] BIGINT NOT NULL. 
The object 'PrimaryKey_029c7a8d-e6b2-43b8-94f1-98fc5b0115e3' is dependent on 
column 'Id'. ALTER TABLE ALTER COLUMN Id failed because one or more objects 
access this column. 

为什么会出现这种情况?

回答

1

看起来你试图改变的列是主键列。您需要首先删除相关的约束条件。这样的事情:ALTER TABLE [dbo].[PerformanceData] DROP CONSTRAINT Id

+0

是的,你是正确的有一些外键约束.. –