Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Поиск значения по всем таблицам БД  [new]
temoxa
Member

Откуда:
Сообщений: 405
Доброго всем дня! Есть задачка поиска значения по всем таблицам в БД? Есть ли какое-нибудь универсальное решение! В базе очень много таблиц, не хочется все переберать! Заранее спасибо!
16 май 12, 12:56    [12562432]     Ответить | Цитировать Сообщить модератору
 Re: Поиск значения по всем таблицам БД  [new]
AnaceH
Member

Откуда:
Сообщений: 109
temoxa, как-то так:

 declare @guid uniqueidentifier = '1AF3BFF9-9971-E011-96BD-0015172F23E8'
 declare @script nvarchar(max) = ''
   
 select @script = @script  
        + ' if exists( 
        
                       select *
                        
                         from ' + c.TABLE_SCHEMA + '.' + c.TABLE_NAME + ' 
                         
                        where ' + c.COLUMN_NAME + ' = ''' + cast(@guid as nvarchar(40)) + '''
                        
                      )
              begin
              
               select '''+ c.TABLE_SCHEMA + '.' + c.TABLE_NAME +''', ''' +c.COLUMN_NAME+ '''
               
              end
              '

   from INFORMATION_SCHEMA.COLUMNS c
 
  where DATA_TYPE = 'uniqueidentifier'
  
 exec (@script)
16 май 12, 13:19    [12562656]     Ответить | Цитировать Сообщить модератору
 Re: Поиск значения по всем таблицам БД  [new]
temoxa
Member

Откуда:
Сообщений: 405
а если искомое значение словесное (например фамилия служащего)?
16 май 12, 13:39    [12562845]     Ответить | Цитировать Сообщить модератору
 Re: Поиск значения по всем таблицам БД  [new]
AnaceH
Member

Откуда:
Сообщений: 109
temoxa,

То Вам надо переделать скрипт так, чтобы он искал строковые значения.
16 май 12, 13:43    [12562881]     Ответить | Цитировать Сообщить модератору
 Re: Поиск значения по всем таблицам БД  [new]
Sekoka
Member

Откуда:
Сообщений: 73
temoxa,

https://www.sql.ru/faq/faq_topic.aspx?fid=734
16 май 12, 13:54    [12563015]     Ответить | Цитировать Сообщить модератору
 Re: Поиск значения по всем таблицам БД  [new]
temoxa
Member

Откуда:
Сообщений: 405
Спасибо, Sekoka!
16 май 12, 16:32    [12564334]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Поиск значения по всем таблицам БД  [new]
Никита Винокуров
Member [скрыт]

Откуда:
Сообщений: 4
temoxa,

Как вариант можно воспользоваться расширенным вариантом [url=]http://remotehelper.ru/subd/ms-sql-server/ms-sql-server-poisk-guid-po-vsem-tablitsam-bd[/url]
8 май 18, 11:37    [21395300]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить