Sql server SQL Server将表的字段类型从数字更改为int
我需要将表的字段从Sql server SQL Server将表的字段类型从数字更改为int,sql-server,Sql Server,我需要将表的字段从Numeric(5,10)更改为int 此字段是一个主键,与20多个其他表相关(某些表的记录超过数百万条) 有人知道更改字段类型的最简单和最安全的方法吗 我试图从SQLServerStudio管理中更改它,但我担心 表将被删除并重新创建,这会减慢进程,甚至在我尝试时,它也会出现超时错误, 有没有人能提供一个关于最佳方式的经验建议。。。 关于我将按照以下步骤进行: 删除引用当前主键列的所有FK 创建一个可为null的新int列 为所有行填充新列,使其唯一 将新列设为非空 删除现有
Numeric(5,10)
更改为int
此字段是一个主键,与20多个其他表相关(某些表的记录超过数百万条)
有人知道更改字段类型的最简单和最安全的方法吗
我试图从SQLServerStudio管理中更改它,但我担心
表将被删除并重新创建,这会减慢进程,甚至在我尝试时,它也会出现超时错误,
有没有人能提供一个关于最佳方式的经验建议。。。
关于我将按照以下步骤进行:
- 执行类似的转换以切换到int列
- 创建新的FK
注意。如果您有DBA,那么这样做是与DBA合作的好时机。他们可能会对确保任何此类更改尽可能平稳和快速感兴趣(例如,分配额外的临时空间以确保添加新的群集PK不会导致问题)。查看此项如果需要增加SSMS超时,可能还希望查看此项: