我想更改table中的列类型stk020。所以,我用这个查询..
ALTER TABLE [stk020]
ALTER COLUMN [t16] nvarchar(Max) not null
Run Code Online (Sandbox Code Playgroud)
的原始列类型[t16]为nvarchar(255)。我得到这个错误
消息5074,级别16,状态1,行1
对象'DF_ STK020 _t16__725CC34D'取决于列't16'。
消息4922,级别16,状态9,第1行,
ALTER TABLE ALTER COLUMN t16失败,因为一个或多个对象访问此列。
有什么办法吗?
您必须先在列上删除我们假定的默认约束,然后才能更改其数据类型:
Alter Table stk020 Drop Constraint DF_STK020_t16__725CC34D
GO
Alter Table stk020 Alter Column t16 nvarchar(max) not null
GO
Alter Table stk020 Add Constraint DF_STK020_t16__725CC34D
Default ... For t16
Run Code Online (Sandbox Code Playgroud)