----------------------------------------------------------------------------------------
--How to find the table and column name in the db that contains a certain record value--
----------------------------------------------------------------------------------------
--DROP TABLE #searchresults
DECLARE @SearchStr nvarchar(100)
SET @SearchStr = 'PORECEIPTIAS'
CREATE TABLE #searchresults (ColumnName nvarchar(370), ColumnValue nvarchar(3630))
SET NOCOUNT ON
DECLARE @TableName nvarchar(256), @ColumnName nvarchar(128), @SearchStr2 nvarchar(110)
SET @TableName = ''
SET @SearchStr2 = QUOTENAME('%' + @SearchStr + '%','''')
WHILE @TableName IS NOT NULL
BEGIN
SET @ColumnName = ''
SET @TableName =
(
SELECT MIN(QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME))
FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE = 'BASE TABLE'
AND QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME) > @TableName
AND OBJECTPROPERTY( OBJECT_ID(
QUOTENAME(TABLE_SCHEMA) + '.' +QUOTENAME(TABLE_NAME)
), 'IsMSShipped') = 0
)
WHILE (@TableName IS NOT NULL) AND (@ColumnName IS NOT NULL)
BEGIN
SET @ColumnName =
(
SELECT MIN(QUOTENAME(COLUMN_NAME))
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_SCHEMA = PARSENAME(@TableName,2)
AND TABLE_NAME = PARSENAME(@TableName, 1)
AND DATA_TYPE IN ('char', 'varchar', 'nchar', 'nvarchar', 'numeric','decimal', 'double', 'money')
AND QUOTENAME(COLUMN_NAME) > @ColumnName
)
IF @ColumnName IS NOT NULL
BEGIN
INSERT INTO #searchresults
EXEC
(
'SELECT ''' + @TableName + '.' + @ColumnName + ''', LEFT(' + @ColumnName + ', 3630)
FROM ' + @TableName + ' (NOLOCK) ' + ' WHERE ' + @ColumnName + ' LIKE ' + @SearchStr2
)
END
END
END
select * from #searchresults
分享到:
相关推荐
### SQL Server 数据库日常维护脚本合集解析 #### 备份操作 在数据库管理中,备份是一项极其重要的任务,确保数据的安全与可恢复性。SQL Server 提供了多种备份方式,包括完整备份、差异备份以及事务日志备份等。 ...
自动化 wincc连接sql server数据库脚本,不需要wincc授权,直连sql server数据库。解决归档导出问题
SQL Server 数据库巡检知识点 通过对 SQL Server 数据库巡检的重要性,我们可以了解到数据库的健康状态和安全性。以下是数据库巡检的知识点: 一、数据库巡检报告 * 数据库巡检报告是对数据库当前状态的总结,...
C#获取SQL server数据库存储过程脚本,可重复执行.用于给数据库升级的打升级包的时候,十分方便
在软件的安装目录下找到 SQL Server 数据库脚本(文件名:sqlserver.sql),用记事本打开,然后把里面的脚本程序全部复制。注意,复制粘贴时不要通过快捷键操作,点鼠标右键复制粘贴。 步骤 4:执行数据库脚本 在...
SQL Server 导入超大 SQL 脚本文件 SQL Server 是一种关系型数据库管理系统,广泛应用于各种行业。然而,在实际应用中,我们经常会遇到导入超大 SQL 脚本文件的问题。本文将介绍如何使用 osql 工具来导入超大 SQL ...
在SQL Server数据库管理中,定期备份是确保数据安全的关键步骤。本话题主要涉及如何使用脚本实现自动全备份,并结合7-Zip进行压缩,以节省存储空间和提高备份效率。以下将详细介绍相关知识点: 1. **SQL Server ...
SQL Server数据库查看器是一款专为SQL Server设计的强大而便捷的数据库管理工具,它提供了一种直观的方式来浏览、管理和操作数据库中的数据。对于SQL Server初学者和经验丰富的DBA(数据库管理员)来说,这款软件都...
Linux平台下访问Windows平台的SQL Server数据库的方法 Linux操作系统作为微软Windows的主要竞争对手,已经在服务器领域取得了不小的成就。许多大型数据库厂商也纷纷推出了Linux版本的数据库管理系统,但是微软的SQL...
SQL SERVER数据库邮件配置脚本,更改参数即可轻松配置数据库邮件
标题 "Delphi SQL Server数据库备份程序" 涉及到的是使用Delphi编程语言与Microsoft SQL Server数据库进行交互,特别是实现数据库的自动化备份功能。在IT领域,数据库备份是至关重要的,它保护了数据免受意外丢失或...
JS访问SQL Server数据库代码 这是我自己的代码,能用不就不用说了
以下是对SQL Server数据库脚本的详细总结,旨在帮助新手进行有效的学习和实践。 一、创建数据库 创建一个新的SQL Server数据库,可以使用`CREATE DATABASE`语句。例如: ```sql CREATE DATABASE MyDatabase ON ...
标题 "SQL Server 数据库脚本导出器 v2.0.rar" 暗示这是一个工具,主要用于从SQL Server数据库中导出脚本和数据。这个工具可能是为了提供比SQL Server自带的脚本生成功能更全面的选项。描述中的“倒出脚本和数据”...
SQL Server数据库健康检查 巡检报告
4. 数据库脚本:sqlserver数据库脚本是一种用于创建和管理数据库的脚本语言,例如可以使用sqlserver.sql文件来创建数据库结构和插入初始数据。 5. 数据库安全:为了保护数据库的安全,需要对数据库进行权限设置、...
### SQL Server 2008 收缩数据库脚本知识点详解 #### 一、脚本概述 本脚本主要用于在SQL Server 2008环境中对数据库进行收缩操作。脚本包含了备份数据库、设置恢复模式以及调整日志文件大小等步骤。在执行前需确保...
功能说明:备份SQLServer数据库,并压缩打包,传至远程FTP服务器,做到本地异地同时备份,可自动清理本地备份,自动保留N个最新备份(针对此种备份,不针对文件夹),老的备份自动删除;将此脚本加入系统任务计划,则...
标题中的“SQL Server自动备份脚本 bat”指的是在Microsoft SQL Server数据库管理系统中,利用批处理文件(.bat)实现数据库的自动化备份。这样的脚本通常包含T-SQL语句,用于执行备份操作,并且可以设置为Windows...
wincc中使用VBS脚本读写SQLServer数据库文件