2014-09-12 2 views
0

У меня проблема с обновлением значения в столбце с именем «ST_CODE» существует во многих таблицах всей базы данных.Обновить данные, если соответствующее значение и столбец во всех таблицах

Я могу узнать таблицу, содержащую столбец «ST_CODE», со следующими кодами.

SELECT c.name As ColNames, t.name as TableNames 
FROM sys.columns c JOIN sys.tables t ON c.object_id = t.object_id 
WHERE c.name='ST_CODE' 

Можно ли обновить значение от «00000» до «11000» для всех столбцов, названных «ST_CODE» во всех таблицах?

Большое спасибо!

+0

это может помочь http://stackoverflow.com/questions/25803589/replace-text-on-all-tables-of-mysql-database – slek

ответ

0

Да .. создайте хранимую процедуру и вставьте имя табуляции и имя столбца во временную таблицу.

Insert into #temp(SELECT c.name As ColNames, t.name as TableNames 
    FROM sys.columns c JOIN sys.tables t ON c.object_id = t.object_id 
    WHERE c.name='ST_CODE') 

Затем закодируйте свою временную таблицу и напишите инструкцию по обновлению по мере необходимости. Пожалуйста, перейдите по этой ссылке для получения помощи. http://ask.sqlservercentral.com/questions/24259/how-to-update-a-dynamic-sql-table-with-a-set-varia.html