【发布时间】:2016-10-01 18:53:45
【问题描述】:
我在将数据从一个 sqlserver 2008 r2 传输到另一个具有不同架构的 sqlserver 2012 数据库时遇到问题,这是一些不同的场景,
- 数据库 1
数据库 1 带有表 Firm 和 Client,它们都有 FirmId 和 ClientId 主键作为 int 数据类型, FirmId 是 int 数据类型,作为 Client 表中使用的引用键。
- 数据库2
具有相同表 Firm 和 Client 的数据库 2,它们都有 FirmId 和 ClientId 但主键作为唯一标识符, FirmId 是唯一标识符数据类型,作为客户端表中使用的引用键。
- 问题
问题不是将数据从1个数据库表复制到2个数据库表,而是将引用键的Firm表维护到Client表中。因为数据类型发生了变化。
我正在使用 sql server 2008 r2 和 sql server 2012
请帮助我解决/找到解决方案,我非常感谢您宝贵的时间和精力。谢谢
【问题讨论】:
-
这是一次性转移还是需要经常运行的东西?
-
它是一次性传输,基本上我们将架构旧数据库 1 更改为 int 数据类型作为主键,新数据库 2 将唯一标识符数据类型作为主键,
-
uniqueidentifier 对于主键来说是个坏主意,因为它会弄乱主键上的聚集索引
标签: sql-server database sql-scripts