我想做同步工作 - 从视图到不同的表。 我有一个DB视图(来自链接服务器),我想创建一个存储过程,将db视图拆分为2个表。 db视图如下所示:
表格是“员工”和“客户”。它们都至少具有“姓氏”,“名字”和“电子邮件”属性。 如果表中已存在数据行,则会有更新,否则为插入。属性'person_type'用于决定我必须使用的女巫表。
我使用ms sql server 2008 r2。
有人可以帮我创建存储过程吗?或者给我一个提示?
提前致谢
答案 0 :(得分:1)
创建2个合并语句,一个用于执行每个任务。
一个MERGE语句将插入/更新/删除到Employee表中,另一个将对Customer表执行相同的操作。
示例:
MERGE YourCustomerTable TargetTable
USING (SELECT * FROM YourView WHERE Column = 'Customer') SourceTable ON TargetTable.CustomerID = SourceTable.CustomerID
WHEN MATCHED THEN UPDATE...........
WHEN NOT MATCHED THEN INSERT (ColumnA, ColumnB) Values (SourceTable.ColumnA, SourceTable.ColumnB)
答案 1 :(得分:0)
根据您的描述,我了解您需要从DB视图为Customer和employee创建两个表。
使这快速;创建一个ssis包并使用“条件拆分”选项根据person_type列拆分表。并将其插入相应的表格。
您可以保存此软件包并在需要时运行它或者您可以将其作为工作