加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 从ints到GUID作为主键移动

发布时间:2020-12-12 06:44:32 所属栏目:MsSql教程 来源:网络整理
导读:我使用几个带有整数主键的引用表.现在我想将更改为GUID,使所有引用保持不变.最简单的方法是什么? 谢谢! 加成 我一般都了解这个过程,所以我需要更详细的建议,例如,如何填写新的GUID列.使用默认值newid()是正确的,但对于现有的行是什么? 解决方法 为guid创建
我使用几个带有整数主键的引用表.现在我想将更改为GUID,使所有引用保持不变.最简单的方法是什么?

谢谢!

加成

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

解决方法

>为guid创建一个新列
主表中的值.使用
uniqueidentifier数据类型,制作它
因为newid()默认值不为null
将填充所有现有行.
>创建新的uniqueidentifier列
在子表中.
>运行update语句以使用exisitng int关系构建公会关系以引用实体.
>删除原始的int列.

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读