Guest User

Untitled

a guest
Aug 16th, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.12 KB | None | 0 0
  1. IF OBJECT_ID ('SearchAllTables') IS NOT NULL
  2. DROP PROCEDURE SearchAllTables
  3. GO
  4.  
  5. CREATE PROC SearchAllTables
  6. (
  7. @SearchString nvarchar(100)
  8. )
  9. AS
  10.  
  11. BEGIN
  12. CREATE TABLE #Results (ColumnName nvarchar(370), ColumnValue nvarchar(3630))
  13.  
  14. SET NOCOUNT ON
  15.  
  16. DECLARE @TableName nvarchar(256), @ColumnName nvarchar(128), @SearchString2 nvarchar(110)
  17. SET @TableName = ''
  18. SET @SearchString2 = QUOTENAME('%' + @SearchString + '%','''')
  19.  
  20. WHILE @TableName IS NOT NULL
  21.  
  22. BEGIN
  23. SET @ColumnName = ''
  24. SET @TableName =
  25. (
  26. SELECT MIN(QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME))
  27. FROM INFORMATION_SCHEMA.TABLES
  28. WHERE TABLE_TYPE = 'BASE TABLE'
  29. AND QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME) > @TableName
  30. AND OBJECTPROPERTY(
  31. OBJECT_ID(
  32. QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME)
  33. ), 'IsMSShipped'
  34. ) = 0
  35. )
  36.  
  37. WHILE (@TableName IS NOT NULL) AND (@ColumnName IS NOT NULL)
  38.  
  39. BEGIN
  40. SET @ColumnName =
  41. (
  42. SELECT MIN(QUOTENAME(COLUMN_NAME))
  43. FROM INFORMATION_SCHEMA.COLUMNS
  44. WHERE TABLE_SCHEMA = PARSENAME(@TableName, 2)
  45. AND TABLE_NAME = PARSENAME(@TableName, 1)
  46. AND DATA_TYPE IN ('char', 'varchar', 'nchar', 'nvarchar', 'int', 'decimal', 'uniqueidentifier')
  47. AND QUOTENAME(COLUMN_NAME) > @ColumnName
  48. )
  49.  
  50. IF @ColumnName IS NOT NULL
  51.  
  52. BEGIN
  53. INSERT INTO #Results
  54. EXEC
  55. (
  56. 'SELECT ''' + @TableName + '.' + @ColumnName + ''', LEFT(' + @ColumnName + ', 3630) FROM ' + @TableName + ' (NOLOCK) ' +
  57. ' WHERE ' + @ColumnName + ' LIKE ' + @SearchString2
  58. )
  59. END
  60. END
  61. END
  62.  
  63. SELECT ColumnName, ColumnValue FROM #Results
  64. DROP TABLE #Results
  65. END
  66.  
  67.  
  68.  
  69. Collapse 
Add Comment
Please, Sign In to add comment