我有一张Customer
有 5500 万条记录的表。我需要HHPK
用增量值 更新列
例子:
12345....upto 55 million
我正在使用以下脚本,但脚本出错,因为数据库的事务日志已满..
DB 正在使用简单的恢复模型
DECLARE @SEQ BIGINT
SET @SEQ = 0
UPDATE Customers
SET @SEQ = HHPK = @SEQ + 1
有没有其他方法可以完成这项任务?请帮忙
我有一张Customer
有 5500 万条记录的表。我需要HHPK
用增量值 更新列
例子:
12345....upto 55 million
我正在使用以下脚本,但脚本出错,因为数据库的事务日志已满..
DB 正在使用简单的恢复模型
DECLARE @SEQ BIGINT
SET @SEQ = 0
UPDATE Customers
SET @SEQ = HHPK = @SEQ + 1
有没有其他方法可以完成这项任务?请帮忙
由于您的表已经有一个CustomerPK
标识列,只需使用:
UPDATE dbo.Customers
SET HHPK = CustomerPK
当然 - 有 5500 万行,这将对您的日志文件造成压力。因此,您可能希望分批执行此操作 - 最好少于 5000 行,以避免锁定升级效应,从而专门锁定整个表:
UPDATE TOP (4500) dbo.Customers
SET HHPK = CustomerPK
WHERE HHPK IS NULL
并重复此操作,直到整个表已更新。
但实际上:如果您已经有一INT IDENTITY
列CustomerPK
- 为什么需要第二列来保存相同的值?对我来说没有多大意义......