![]() |
1
4
除了克莱的建议,以下问题可能会有所帮助: 要禁用引用oldTable的表上的所有约束,请尝试执行以下查询的输出:
要将所有数据移动到新表中,并更改字段,请尝试以下操作:
放下旧桌子:
要将新表重命名为旧名称:
要重新启用引用旧表的表上的所有约束,请尝试执行以下查询的输出:
希望有帮助… |
![]() |
2
3
我们要做的是:
这是干净的,可以批量操作,很好理解。 |
![]() |
3
0
您还需要更改子表。毕竟,你现在也将尝试在它们中插入一个很大的int。我先换儿童桌 这不是一个简单或短暂的过程。我建议您告诉您的用户,数据库将在一个设定的日期停止维护(您可以通过执行dev所需的时间来衡量多长时间),并在进行这些更改时将数据库重置为单用户模式。在切换到另一个表时,您不希望丢失由用户添加(或更改)到一个表的数据。如果由于某种原因您没有维护窗口(为了数据完整性,我强烈建议您这样做),那么您必须首先更改子表,以避免插入错误,如果您的a真的接近极限,并且几乎可以立即看到大的数字。 请确保为整个数据库结构编写脚本,包括默认值、触发器、检查常量索引等,因为您希望重新创建所有内容。 确保通过dev上的脚本来完成所有这些工作,这将使您在测试完流程后更容易执行一个prod。 |
![]() |
4
-1
我认为您只能创建一个具有更改的pk数据类型的新数据库,然后导出/导入数据,或者批量插入到新数据库中,然后重命名新数据库。当然,如果您有许多被引用的表,并且您的新pk数据类型与以前的不兼容,那么这就是实际情况。 |
![]() |
Duvan · 将逗号(,)替换为点(.)[副本] 2 年前 |
![]() |
Mateen Bagheri · 选择表的计数并选择其自身 2 年前 |
![]() |
SoT · SQL Server中求和函数的工作方式 2 年前 |
![]() |
NKAT · 将列值聚合到列表中会产生错误 2 年前 |
![]() |
deanpillow · 返回两列中有一个匹配值的记录 2 年前 |
![]() |
snowflakes74 · 在Dapper中异步查询多个结果 2 年前 |