oracle关联表查询使用索引_SQL技巧:查询某个表关联的所有存储过程
SQL技巧:查询某个表关联的所有存储过程
关键字:#SQL技巧#
背景
在开发过程中,可能需要更改某一个表的数据结构,或者更新数据。但你又不太清楚会造成什么影响,迟迟不敢下手进行调整。笔者[快乐IT]最近在做ERP K3与OA蓝凌接口时就遇到了这个问题,那是否有办法知道我们所修改的Table有哪些存储过程引用了,哪些视图关联了即将要修改的表呢。
答案是肯定的,奉上代码:
DECLARE @KeyWord nvarchar(100)SET @KeyWord = 'ICStockBill' --设置需要搜索的关键词(如:表名,存储过程名,视图名等)SELECT b.name,a.definition FROM sys.all_sql_modules a INNER JOIN sys.objects bON a.object_id = b.object_idWHERE b.type = 'P' AND a.definition LIKE '%'+@KeyWord+'%'
SQL查找与表关联的存储过程的结果为:
大家看到没有?我们即将修改的表[ICStockBill]竟然有91个存储过程引用了这个表,如果靠手工去查找是该是一项多么大的工程啊。但问题又来了,如何修改这表结构?谨慎的做法是:只能添加字段,不能修改字段。
扩展:如何查找与表关联的所有视图?
答案很简单,就是将type='P' 改成type='V'即可:
DECLARE @KeyWord nvarchar(100)SET @KeyWord = 'ICStockBill' --设置需要搜索的关键词(如:表名,存储过程名,视图名等)SELECT b.name,a.definition FROM sys.all_sql_modules a INNER JOIN sys.objects bON a.object_id = b.object_idWHERE b.type = 'V' AND a.definition LIKE '%'+@KeyWord+'%'
通过表名查找视图的结果为:
文章来源
本文来源于[快乐IT],希望文章对您有帮助。
oracle关联表查询使用索引_SQL技巧:查询某个表关联的所有存储过程相关推荐
- mysql嵌套子查询索引_SQL 子查询,索引优化
场景 索引优化 单列索引 多列索引 索引覆盖 排序 场景 我用的数据库是mysql5.6,下面简单的介绍下场景 课程表 create table Course( c_id int PRIMARY KE ...
- mysql两张表联查更新语句_sql联合查询语句(两张表)
展开全部 sql联合查询语句(两张e69da5e6ba9062616964757a686964616f31333365643662表)是: select A.ID,A.VALUE,A.TYPE,A.N ...
- sql查询两个表结果相减_sql子查询两个表的数据相减
现有表atable和表btable,数据如下: table atable id anumber 1 500 2 300 3 400 table btable ...
- mysql连表的sql语句_sql语句之连表操作
内连接 select * from employee inner join department on employee.dep_id = department.id 左连接 在内连接的基础上保留左表 ...
- 强制MySQL查询走索引和强制查询不缓存
有些情况下,表中创建了索引但是EXPLAIN的查看执行计划的时候发现并没有走索引.是因为优化器认为该语句不使用索引效率更好. 当然也可以强制走索引.类似: SELECT uid,uname FROM ...
- mysql语言中修改表结构的命令_sql语句中修改表结构的命令是什么
SQL 语句中修改表结构的命令是ALTER TABLE. ALTER TABLE 语句 ALTER TABLE 语句用于在已有的表中添加.删除或修改列. SQL ALTER TABLE 语法 如需在表 ...
- MySQL如何实现强制查询走索引和强制查询不缓存
EXPLAIN的查询执行计划 A:强制走索引 SELECT uid, unameFROM table_nameforce index(ind_id); B:强制查询不缓存 SELECT SQL_NO_ ...
- mysql 查询空值列_SQL如何查询某行空值列的数量?
展开全部 | 1 mysql 的话就如下,也62616964757a686964616fe59b9ee7ad9431333332616463没啥简单的办法:select isnull(A)+isnul ...
- mysql多表连接 索引_MySQL多表查询之外键、表连接、子查询、索引
一.外键: 1.什么是外键 2.外键语法 3.外键的条件 4.添加外键 5.删除外键 1.什么是外键: 主键:是唯一标识一条记录,不能有重复的,不允许为空,用来保证数据完整性 外键:是另一表的主键, ...
最新文章
- NSLog打印自定义对象
- spring boot socket长连接_springboot 整合阿里 druid 数据库连接池实战
- 【RxSwift 实践系列 2/3】thinking in Rx- Create和Drive
- 基于centos6的mysql5.7.13主从部署(一)
- Java开发面试问题,Java中高级核心知识全面解析(10)
- HDU 3062 Party
- windows mysql读写分离_windows下的MySql实现读写分离
- 全数字实时仿真平台SkyEye经典案例——空间站项目
- Vue2.x中的父组件数据传递至子组件
- django之视图函数
- jaxws-ri下载链接
- 最经济方案 谈P2P电影服务器
- kernel32.dll动态链接库报错解决方法win7,怎么修复kernel32.dll文件缺失
- Navicat Premium 12 破解
- java 刷题ide,力扣(LeetCode)刷题神器之Vs Code
- Nginx静态资源站点——Nginx虚拟主机
- 【王道考研】操作系统 笔记 第二章上 进程调度
- 【天梯赛练习题(c语言)】
- 青龙BOT机器人交互
- 通过css让鼠标变小手样式