我有一张表,我需要在其中添加一列,该表有数百万条记录。对于现有记录,我必须更新列值(对于每个记录将不同)。运行单个更新查询将花费大量时间。有没有办法可以用最少的锁定时间来实现这一点。
答案 0 :(得分:0)
在你的情况下可以有两种方式,
如果您的附加列是派生列(值可以从现有列派生),那么简单的更新查询就足够了
如果它不是派生的,那么将所有值写入文件(可能是脚本)并将该文件作为新列导入到表中。 (或导出现有表并使用新列值修改该文件,然后导入)
以上两种方式,导入速度更快,锁定量更少。 希望有所帮助:)
答案 1 :(得分:0)
当无法在数据库中生成哈希值时,您唯一能做的就是运行单个更新。通过将多个更新批处理到一个事务中,可以获得一些性能改进。