当前位置:  开发笔记 > 编程语言 > 正文

从int到GUID作为主键移动

如何解决《从int到GUID作为主键移动》经验,为你挑选了1个好方法。

我使用几个带有整数主键的引用表.现在我想将更改为GUID,使所有引用保持不变.最简单的方法是什么?

谢谢!

加成

我一般都了解这个过程,所以我需要更详细的建议,例如,如何填写新的GUID列.使用默认值newid()是正确的,但对于现有的行是什么?



1> Andy Jones..:

在主表中为guid值创建一个新列.使用uniqueidentifier数据类型,使其不为null,并使用newid()默认值,以便填充所有现有行.

在子表中创建新的uniqueidentifier列.

运行update语句以使用exisitng int关系构建公会关系以引用实体.

删除原始的int列.

此外,在数据/索引页面中留出一些空间(指定fillfactor <100),因为guids不像int identity列那样是顺序的.这意味着插入可以位于数据范围内的任何位置,如果页面已满100%,则会导致页面拆分.

推荐阅读
大大炮
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有