【发布时间】:2017-06-29 01:32:57
【问题描述】:
我需要你的帮助。
例如,我有一个 SQL Server 视图 MyView。
Adb.vs.MyView
有列:
ID
Name
Address
Email
Phone
视图背后的逻辑是下一个
SELECT
Ac.AccountID AS ID,
Ac.AccountName AS Name,
Ad.Main_Adress AS Address,
Em.Main_Email AS Email,
Concat(Ph.Phone_Area_Code,Ph.Mobile_Phone_Number) AS Phone
FROM
Bdb.dbo.Account AS Ac
INNER JOIN
Cdb.dbo.Address AS Ad ON Ac.AccountID = Ad.AccountID
INNER JOIN
Cdb.dbo.Emails AS Em ON Ac.AccountID = Em.AccountID
INNER JOIN
Cdb.dbo.PhoneBook AS Ph ON Ac.AccountID = Ph.AccountID
注意:
所有这些表之间没有建立 KEY 关系。
我的目标是对该视图进行逆向工程以获得下一种结果:
请建议任何类型的工具/工具或脚本来执行此操作。
另外,如果有人知道 Rev.En 的类似解决方案。用于将数据填充到表中的存储过程非常感谢
贝克。在不久的将来,我将需要反转大量此类视图和存储过程。
提前感谢您的任何支持!
【问题讨论】:
-
不太可能,因为视图的输出列在源表和列中可能不直接相关。它们可能是基于源表(或从其他表和视图获取其输入的其他视图)中的多个列的值进行计算的表达式的结果,或者就此而言,输出可能是不相关的常量表达式任何表格字段,或当前日期时间等环境数据。
-
要求我们推荐或查找书籍、工具、软件库、教程或其他非现场资源的问题对于 Stack Overflow 来说是题外话,因为它们往往会吸引固执己见的答案和垃圾邮件。
标签: sql-server tsql reverse-engineering