【发布时间】:2015-02-17 23:43:45
【问题描述】:
我有以下三个具有父子关系的表:
------------
|Company |
------------
CompanyId
------------
|Agent |
------------
AgentId
CompanyId
------------
|Work |
------------
WorkId
AgentId
我想复制给定公司的所有记录,并插入到同一个表中,保持关系。我应该如何处理?
【问题讨论】:
-
是
CompanyId、AgentId和WorkId标识列吗?你想复制所有 3 个表吗?这些表中是否还有更多列(每个表至少再添加一个) -
为什么???是否没有主键或其他约束来确保此类事情不会发生?
-
@dotnetom 是的,它们是标识列。我想使用特定过滤器复制所有三个表中的记录(例如复制 CompanyId 1 的所有记录/子项),并将其插入到保持关系的相同表中。
-
为什么不使用连接 3 个表的视图?创建另一个可能很快与现有表不同步的表的真正原因是什么?
标签: sql sql-server tsql