Created
November 15, 2017 22:10
-
-
Save OndeVai/24c4c899c19a4b89b46490d94c389059 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
USE [PMROEM_Sitefinity] | |
GO | |
/****** Object: StoredProcedure [dbo].[FindGUID] Script Date: 11/15/2017 2:57:58 PM ******/ | |
SET ANSI_NULLS ON | |
GO | |
SET QUOTED_IDENTIFIER ON | |
GO | |
CREATE PROCEDURE [dbo].[FindGUID] @searchValue uniqueidentifier AS | |
/* | |
Search all tables in the database for a guid | |
Revision History | |
6/9/2009: Initally created | |
6/10/2009: Build or clause of multiple columns on one table | |
*/ | |
--DECLARE @searchValue uniqueidentifier | |
--SET @searchValue = '{2A6814B9-8261-452D-A144-13264433864E}' | |
DECLARE abc CURSOR FOR | |
SELECT | |
c.TABLE_SCHEMA, c.TABLE_NAME, c.COLUMN_NAME | |
FROM INFORMATION_SCHEMA.Columns c | |
INNER JOIN INFORMATION_SCHEMA.Tables t | |
ON c.TABLE_NAME = t.TABLE_NAME | |
AND t.TABLE_TYPE = 'BASE TABLE' | |
WHERE DATA_TYPE = 'uniqueidentifier' | |
DECLARE @tableSchema varchar(200) | |
DECLARE @results TABLE (TheTable varchar(max), TheColumn varchar(max)) | |
DECLARE @tableName varchar(200) | |
DECLARE @columnName varchar(200) | |
DECLARE @szQuery varchar(8000) | |
SET @szQuery = '' | |
DECLARE @lasttable varchar(255); | |
SET @lasttable=''; | |
OPEN ABC | |
FETCH NEXT FROM abc INTO @tableSchema, @tableName, @columnName; | |
WHILE (@@FETCH_STATUS = 0) | |
BEGIN | |
IF(@lasttable=@tablename) | |
BEGIN | |
SET @szQuery = @szQuery + ' OR [' + @columnName + ']=''' + CAST(@searchValue AS varchar(50)) + ''''; | |
END | |
ELSE | |
BEGIN | |
SET @lasttable = @tablename; | |
IF @szQuery <> '' | |
BEGIN | |
PRINT @szQuery | |
insert into @results | |
EXEC (@szQuery); | |
END | |
SET @szQuery = | |
'SELECT '''+@tableSchema+'.'+@tableName+''' AS TheTable, '''+@columnName+''' AS TheColumn '+ | |
'FROM '+@tableName+' '+ | |
'WHERE '+@columnName+' = '''+CAST(@searchValue AS varchar(50))+'''' | |
END | |
FETCH NEXT FROM abc INTO @tableSchema, @tableName, @columnName; | |
END | |
CLOSE abc | |
DEALLOCATE abc | |
IF @szQuery <> '' | |
BEGIN | |
PRINT @szQuery | |
insert into @results | |
EXEC (@szQuery); | |
END | |
select * from @results |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment