视图的依赖
我现在写了个小工具。将视图导出成sql语句。但是视图的依赖关系没有解决。
谁有好的办法。
--------------
SELECT DISTINCT
dbo.sysobjects.name, sysobjects_1.name AS name2,
sysobjects_1.xtype,depnumber,depid,sysdepends.id,sysobjects.type
FROM dbo.sysobjects sysobjects_1 INNER JOIN
dbo.sysdepends ON sysobjects_1.id = dbo.sysdepends.id RIGHT OUTER JOIN
dbo.sysobjects ON dbo.sysdepends.depid = dbo.sysobjects.id
WHERE ((dbo.sysobjects.type = 'v 'or dbo.sysobjects.type = 'P 'or dbo.sysobjects.type = 'u ') and dbo.sysobjects.STATUS> =0 and sysobjects.name <> 'syssegments ' and sysobjects.name <> 'sysconstraints ')
order by depnumber desc
TABLE1ttttP 212535795041653580929U
TABLE1VIEW1V 212535795041621580815U
TABLE2VIEW2V 215895807011637580872U
VIEW1VIEW3V 216215808151685581043V
VIEW2VIEW3V 216375808721685581043V
TABLE1ttttP 112535795041653580929U
TABLE1VIEW1V 112535795041621580815U
TABLE2VIEW2V 115895807011637580872U
tttttttP 116535809291701581100P
VIEW1VIEW3V 116215808151685581043V
VIEW2VIEW3V 116375808721685581043V
TABLE3NULLNULLNULLNULLNULLU
tttNULLNULLNULLNULLNULLP
VIEW3NULLNULLNULLNULLNULLV
不知道这个有没有用。如果有用的话。该如果来程序来实现先后关系。可以用JAVA或。NET
[解决办法]
SELECT distinct b.name,b.xtype
FROM dbo.sysdepends a
left JOIN dbo.sysobjects b ON a.id=b.id
WHERE a.depid=object_id( 'h_info ') and b.status> 0
[解决办法]
两个一样的?
在sysdepends表中按id与depid找出父子关系,depid> 1的表示有父对象,先创建父对象,再创建子对象.