搜索表字段包含某字符串的SQL和监控Oracle数据库的SQL。
1.第一个SQL
背景:需要找到SQL Server数据库中,包含某个字符串的表,输出表和包含该字符串的列。
DECLARE @string VARCHAR(100)='=' --这里填要搜索的字符串
DECLARE @sql NVARCHAR(MAX)
SET @sql=N'DECLARE @sql NVARCHAR(MAX),@ColNames NVARCHAR(MAX),@ColValues NVARCHAR(MAX);SET @ColNames=NULL;SET @ColValues=NULL;
SELECT @ColNames=ISNULL(@ColNames+'','','''')+QUOTENAME(c.[Name])
,@ColValues=ISNULL(@ColValues, ''''''''+OBJECT_NAME(c.object_id)+''''''''+'' AS [TableName]'')+'',''+ ''RTRIM(CONVERT(NVARCHAR(max),''+QUOTENAME(c.[Name])+'')) AS ''+QUOTENAME(c.[Name])
FROM sys.[columns] AS c where c.object_id=object_id(N''?'');
set @sql= ''SELECT * FROM (SELECT ''+ @ColValues+'' FROM ''+''?''+'' ) as t UNPIVOT(ColumnValue FOR ColumName IN (''+@ColNames+'')) u WHERE CHARINDEX('''''+@string+N''''',ColumnValue)>0'';
print @sql;
EXEC(@sql)'
PRINT @sql
EXEC sp_MsforeachTable @command1=@sql
第二是监控oracle数据库的SQL
背景:客户端程序连数据库,通过操作程序界面,来找到对应的表。
注:SQL_TEST字段只能取前1000个字符。
如果想再PL/SQL看PL/SQL执行了哪些SQL语句,可以直接用快捷键Ctrl+E弹出的界面查看。
SELECT
T.PARSING_SCHEMA_NAME, --数据库名
T.MODULE, --连数据库终端名
T.*
FROM V$SQL T
WHERE T.LAST_ACTIVE_TIME>(SYSDATE - INTERVAL '' SECOND) -- 5秒内的SQL语句
AND T.PARSING_SCHEMA_NAME = 'OPERANEW' --数据库名称
--AND (T.MODULE IS NULL OR T.MODULE LIKE '%连接终端%') -- 包含PL/SQL 和程序.exe
AND LOWER(T.SQL_TEXT) LIKE '%select%' --查询某类SQL语句
ORDER BY T.LAST_ACTIVE_TIME DESC --注:SQL_TEST字段只能取前1000个字符。
搜索表字段包含某字符串的SQL和监控Oracle数据库的SQL。的更多相关文章
- Oracle数据库 基础SQL语句练习
一.说明 第一次使用Oracle,想做一些练习,熟悉一些oracle. 表:使用的是scott用户,默认的表 具体表讲解,可以参考该文档:https://www.cnblogs.com/xjcheng ...
- 将现有的sql脚本导入 Oracle 数据库,中文乱码问题
将现有的sql 脚本导入 Oracle数据库 比如 在windows 系统下,可以写一个 bat 来实现直接导入 如:bat 中的内容如下,logs.log 将会记录执行日志 sqlplus user ...
- oracle数据库元数据SQL查询
oracle数据库经典SQL查询 .查看表空间的名称及大小 select t.tablespace_name, round(sum(bytes/(1024*1024)),0) ts_size from ...
- PL/SQL Developer 连接Oracle数据库详细配置方法
PL/SQL Developer 连接Oracle数据库详细配置方法 近段时间很多网友提出监听配置相关问题,客户终端(Client)无法连接服务器端(Server).本文现对监听配置作一简单介绍,给出 ...
- sql server和oracle数据库
sql server和oracle数据库安装按照官方教程即可:以及他们相应的管理工具,sql server management studio自带的,oracle的管理工具PLSQL需要单独下载安装, ...
- SQL语句往Oracle数据库中插入日期型数据(to_date的用法)
Oracle 在操作数据库上相比于其他的 T-sql 有微小的差别,但是在插入时间类型的数据是必须要注意他的 to_date 方法,具体的情况如下: --SQL语句往Oracle数据库中插入日期型数据 ...
- 简单的PL/SQl链接远程ORACLE数据库方法
简单的PL/SQl链接远程ORACLE数据库方法 PLSQL Developer新手使用教程 pasting
- Oracle数据库之SQL基础(一)
主要内容:用户与表空间:表与约束:查询语句. 一.概述 Oracle安装:访问官网,下载 二.用户与表空间 在安装Oracle时在开始菜单里可以用sql puls登录oracle. ★1.系统用户 s ...
- Oracle数据库常用Sql语句大全
一,数据控制语句 (DML) 部分 1.INSERT (往数据表里插入记录的语句) INSERT INTO 表名(字段名1, 字段名2, ……) VALUES ( 值1, 值2, ……); INSE ...
随机推荐
- Python学习案例之人脸检测识别
前言 随着科技的发展,人脸识别技术在许多领域得到的非常广泛的应用,手机支付.银行身份验证.手机人脸解锁等等. 识别 废话少说,这里我们使用 opencv 中自带了 haar人脸特征分类器,利用训练好的 ...
- mange
from flask import Flask app = Flask(__name__) manager = Manager(app) 1. 重写Command class ShellCommand ...
- Neutron Vlan Network 学习
vlan network 是带 tag 的网络,是实际应用最广泛的网络类型. 下图是 vlan100 网络的示例. 1. 三个 instance 通过 TAP 设备连接到名为 brqXXXX ...
- OpenStack端口(15)
一.OpenStack组件使用的默认端口号 openstack openstack service default ports port type keystone Identity service ...
- MySQL主从复制(一)
whereis...命令的使用:
- plus.webview更新上一个页面的信息
let currentWebview = plus.webview.currentWebview(); let backWebview = currentWebview.opener(); ...
- python之路8-内置模块介绍
time & datetime模块 1 #_*_coding:utf-8_*_ 2 __author__ = 'Alex Li' 3 4 import time 5 6 7 # print(t ...
- java回调函数,看完就懂
java回调函数在网上了看了些例子,比较绕,不够清晰,自己写的一个例子比较通俗,java回调其实很简单. 举个例子我是类B,我有个方法叫b(),现在我要调用类A中的方法a(),写个代码就是: publ ...
- 「Algospot」龙曲线DRAGON
一道考验思维的好题,顺便总结求第k大问题的常规思路: 传送门:$>here<$ 题意 给出初始串FX,每分形一次所有X替换为X+YF,所有Y替换为FX-Y.问$n$代字符串第$p$位起长度 ...
- 【THUSC2017】【LOJ2978】杜老师 高斯消元
题目大意 给你 \(l,r\),求从 \(l\) 到 \(r\) 这 \(r-l+1\) 个数中能选出多少个不同的子集,满足子集中所有的数的乘积是一个完全平方数. 对 \(998244353\) 取模 ...