2014-09-12 9 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' 

은 모든 테이블에서 'ST_CODE'라는 이름의 모든 열에 대해 '11000'에서 '00000'의 값을 업데이트 할 수 있습니까?

감사합니다.

+0

도움이 될 수 있습니다. http://stackoverflow.com/questions/25803589/replace-text-on-all-tables-of-mysql-database – slek

답변

0

예 .. 저장 프로 시저를 만들고 임시 테이블에 tablename과 열 이름을 삽입하십시오.

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