ALTER PK FROM VARCHAR TO INT

时间:2013-11-06 11:17:51

标签: sql-server sql-server-2008 identity-column alter-column

我有一张PK为varchar(20)的表。我认为这是拖延我的查询速度的事情(没有检查,但有很多关于varchars作为PK的阅读)。

事情是,我想将列替换为INT(标识),但它具有参照完整性约束。

是否有一些简单的任务可以执行,因为如果没有,我会逐个执行,让CASCADE Update执行其余的更新。

PS:使用MS SQL Server 2008

1 个答案:

答案 0 :(得分:1)

  

没有检查但是......

切割前测量。总是。如果您遇到性能问题,请将其作为性能问题进行调查。使用Waits and Queues之类的方法。阅读Understanding how SQL Server executes a query

对于记录:性能问题根本原因使用VARCHAR(20)的几率基本上为0(零)。