挑选出只依赖表的视图, 并得到相应的创建脚本
来源:互联网 发布:2017淘宝注册用户数量 编辑:程序博客网 时间:2024/06/08 08:19
---------------- 测试表及视图 BEGIN ----------------USE tempdbGOIF OBJECT_ID('dbo.t') IS NOT NULLDROP TABLE dbo.tGOCREATE TABLE dbo.t(id INT PRIMARY KEY,userName NVARCHAR(20))GOIF OBJECT_ID('dbo.view_grand_father') IS NOT NULLDROP VIEW dbo.view_grand_fatherGOIF OBJECT_ID('dbo.view_father') IS NOT NULLDROP VIEW dbo.view_fatherGOIF OBJECT_ID('dbo.view_son') IS NOT NULLDROP VIEW dbo.view_sonGOIF OBJECT_ID('dbo.view_test') IS NOT NULLDROP VIEW dbo.view_testGOCREATE VIEW dbo.view_sonASSELECT * FROM dbo.tGOCREATE VIEW dbo.view_fatherASSELECT * FROM view_sonGOCREATE VIEW dbo.view_grand_fatherASSELECT * FROM view_fatherGOCREATE VIEW dbo.view_testASSELECT * FROM view_sonUNIONSELECT * FROM dbo.tGO---------------- 测试表及视图 END ------------------1. 查出所有的视图的情况SELECT v.name AS viewName,OBJECT_NAME(depid) depName,ISNULL((SELECT TOP 1 1 FROM sys.tables AS t WHERE t.[object_id]=s.depid),0) AS depTable,ISNULL((SELECT TOP 1 1 FROM sys.views AS v WHERE v.[object_id]=s.depid),0) AS depView FROM sys.[views] AS v INNER JOIN sys.sysdepends AS s ON v.[object_id]=s.idWHERE s.depnumber=1ORDER BY depTable DESC/*viewName depNamedepTable depViewview_sont10view_testt10view_testview_son01view_fatherview_son01view_grand_fatherview_father01*/--2. 得到所有只依赖表的视图的脚本;WITH cte AS (SELECT v.[object_id],OBJECT_NAME(depid) depName,ISNULL((SELECT TOP 1 1 FROM sys.tables AS t WHERE t.[object_id]=s.depid),0) AS depTable,ISNULL((SELECT TOP 1 1 FROM sys.views AS v WHERE v.[object_id]=s.depid),0) AS depView FROM sys.[views] AS v INNER JOIN sys.sysdepends AS s ON v.[object_id]=s.idWHERE s.depnumber=1)select OBJECT_NAME(s.id) AS viewName,text from sys.syscomments AS sWHERE s.id IN (SELECT a.object_id FROM cte a WHERE depTable=1 AND NOT EXISTS(SELECT * FROM cte b WHERE a.object_id=b.object_id AND b.depView=1))/*viewName textview_sonCREATE VIEW dbo.view_son AS SELECT * FROM dbo.t */--余下就是多重依赖的视图, 略
阅读全文
0 0
- 挑选出只依赖表的视图, 并得到相应的创建脚本
- 空间数据按条件挑选出符合条件的行并另存为另一张表
- 得到ORACLE表的创建脚本。
- Ext 表格得到所有行,并得到相应的列值
- 两个有序的数组,挑选出相同的元素
- Android中ListView和GridView通过getChildAt方法得到相应的Item并刷新
- 如何创建一个只显示复制冲突文档的视图
- 简单七招轻松挑选出一款优秀的网站空间
- d025: 从 n 个数中挑选出最大的数
- 刚挑选出的几本硬件设计类书籍
- 从 n 个数中挑选出最大的数
- 表视图的创建
- 表视图的创建
- 根据汉字得到相应的拼音
- 更新表结构的同时更新相应的视图
- maven 打包,打包依赖,并只打某个包下的依赖
- 利用现有数据表得到它的创建脚本
- 创建只对某几个视图或表既有查询权限的用户
- Java中的常量和变量
- 文章标题 UVALive 6062:Reduce the Maintenance Cost(双联通分量缩点)
- Ubuntu 安装Clion
- TCP连接和关闭的过程
- 理解Batch Normalization
- 挑选出只依赖表的视图, 并得到相应的创建脚本
- OpenJudge百炼-2967-特殊日历计算-C语言-日期处理
- IOS QLPreviewController的简单使用及如何隐藏toolbar上的Action按钮
- java语言基础(89)——多线程(线程控制)
- android.hardware.camera2详解(实时更新,未完待续...)
- 建图spfa
- Apache与Tomcat有什么关系和区别
- assign的使用
- 关于这两天收集的知识点(未整理) -- JAVA 基础