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 b
ON a.object_id = b.object_id
WHERE 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 b
ON a.object_id = b.object_id
WHERE b.type = 'V'
AND a.definition LIKE '%'+@KeyWord+'%'
通过表名查找视图的结果为:
文章来源
本文来源于[快乐IT],希望文章对您有帮助。
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 b
ON a.object_id = b.object_id
WHERE 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 b
ON a.object_id = b.object_id
WHERE b.type = 'V'
AND a.definition LIKE '%'+@KeyWord+'%'
通过表名查找视图的结果为:
文章来源
本文来源于[快乐IT],希望文章对您有帮助。
SQL技巧:查询某个表关联的所有存储过程的更多相关文章
- Hibernate原生SQL查询多表关联,SQL语句要注意的问题
Hibernate原生SQL查询多表关联,SQL语句要注意的问题 @for&ever 2009-9-4 系统环境: MySQL5.1 Hibernate3.3 有如下的假定: 实体类 Ques ...
- Oracle\MS SQL Server Update多表关联更新
原文:Oracle\MS SQL Server Update多表关联更新 一条Update更新语句是不能更新多张表的,除非使用触发器隐含更新.而表的更新操作中,在很多情况下需要在表达式中引用要更新的表 ...
- SQL语句查询某表的所有字段及数据类型
SQL语句查询某表的所有字段及数据类型 SELECT name AS column_name , TYPE_NAME(system_type_id) AS column_type , max_leng ...
- [转]关于oracle sql语句查询时表名和字段名要加双引号的问题
oracle初学者一般会遇到这个问题. 用navicat可视化创建了表,可是就是不能查到! 后来发现②语句可以查询到 ①select * from user; 但是,我们如果给user加上双引 ...
- sql server 查询某个表被哪些存储过程调用
sql server 查询某个表被哪些存储过程调用 select distinct object_name(id) from syscomments where id in (select id fr ...
- 数据库表设计时一对一关系存在的必要性 数据库一对一、一对多、多对多设计 面试逻辑题3.31 sql server 查询某个表被哪些存储过程调用 DataTable根据字段去重 .Net Core Cors中间件解析 分析MySQL中哪些情况下数据库索引会失效
数据库表设计时一对一关系存在的必要性 2017年07月24日 10:01:07 阅读数:694 在表设计过程中,我无意中觉得一对一关系觉得好没道理,直接放到一张表中不就可以了吗?真是说,网上信息什么都 ...
- SQL Server 查询锁表和接锁表
SQL Server 查询锁表 select request_session_id spid,OBJECT_NAME(resource_associated_entity_id) as tableNa ...
- mysql数据库-初始化sql建库建表-关联查询投影问题
下面是一个简易商城的几张表的创建方式 drop database if exists shop ; create database shop CHARACTER SET 'utf8' COLLATE ...
- 【SQL】在SQL Server中多表关联查询问题
好久没有写SQL语句的多表连接查询,总在用框架进行持久化操作.今天写了一个多表关联查询,想根据两个字段唯一确定一条数据 失败的案例如下: SELECT cyb.id,ad.name FROM [Gen ...
- 序列化表单为json对象,datagrid带额外参提交一次查询 后台用Spring data JPA 实现带条件的分页查询 多表关联查询
查询窗口中可以设置很多查询条件 表单中输入的内容转为datagrid的load方法所需的查询条件向原请求地址再次提出新的查询,将结果显示在datagrid中 转换方法看代码注释 <td cols ...
随机推荐
- Android运行时请求权限封装
@ 目录 1 介绍 2 测试用例设计 3 实现 4 用例测试 5 总结 本文目的:"借助透明Activity封装一个易于调用的权限请求模块" 1 介绍 Android权限的校验和申 ...
- Numpy本征值求解
技术背景 Numpy是一个Python库中最经常被用于执行计算任务的一个包,得益于其相比默认列表的高性能表现,以及易用性和可靠性,深受广大Python开发者的喜爱.这里介绍的是使用Numpy计算矩阵本 ...
- 借助AI助手分析LlamaIndex的工作流可视化
接续上次的讨论,我们上次主要分析了LlamaIndex工作流的核心流程,当前还剩下一行代码需要关注,那就是关于工作流的可视化.今天我们的目标是深入理解这一可视化部分的主要流程,并且对其大体的实现方式进 ...
- Fiddler对手机APP进行抓包
1.下载安装Fiddler 2.打开Fiddler菜单项Tools-> Options->HTTPS 勾选CaptureHTTPS CONNECTs,点击Actions, 勾选Decryp ...
- shell中字符串比较和模糊比较说明
shell字符串比较说明 1 完全比较方法(完全匹配) if [ "$soure" == "$dest" ]; then echo "is ==&qu ...
- Win7下C盘无法创建文件解决办法
Win7下C盘无法创建文件解决办法: To fix it, just turn off the User Account Control (UAC). In Windows 8, do not tur ...
- 操作系统messages文件位置更改
问题现象 在遇到一个问题的时候需要查看操作系统的日志,但是到操作系统上的 /var/log/messages 文件中发现该文件已经很久没有刷新过了. 这个系统之前是做过安全加固的,我怀疑它改过操作系统 ...
- Qt编写地图综合应用36-覆盖物折线
一.前言 折线图目前应用最广的也是用来绘制各种轨迹,折线图其实就是后面动态轨迹图.飞机航线图的前身,公用的一个方法addPolyline,折线图可以设置颜色.粗细.透明度等属性,如果开启了悬浮绘图工具 ...
- Qt编写的项目作品16-Onvif搜索和云台控制工具
一.功能特点 广播搜索设备,支持IPC和NVR,依次返回. 可选择不同的网卡IP进行对应网段设备的搜索. 依次获取Onvif地址.Media地址.Profile文件.Rtsp地址. 可对指定的Prof ...
- 2024-12-28:求出出现两次数字的 XOR 值。用go语言,给定一个数组 nums,其中的数字出现的频率要么是一次,要么是两次。 请找出所有出现两次的数字,并计算它们的按位 XOR 值。 如果没
2024-12-28:求出出现两次数字的 XOR 值.用go语言,给定一个数组 nums,其中的数字出现的频率要么是一次,要么是两次. 请找出所有出现两次的数字,并计算它们的按位 XOR 值. 如果没 ...