2012-08-16 5 views
1

나는 다음과 같은 SQL 업데이트가 있습니다실행 SQL UPDATE 문

UPDATE [Shop_Benelux_2012].[dbo].[StringResource] 
    SET [ConfigValue] = '' 
WHERE [Name] = 'default.aspx.1' 
GO 

가 난에이 문을 실행하는 데 필요한 10 데이터베이스가 있습니다.

이 같은 내 DB의 모습 :

  • Shop_DE_2012
  • Shop_FR_2012 ...

은 내가 어떻게 수동으로 관리 스튜디오에서 각각의 DB에 그것을 실행하지 않고 모든 데이터베이스에 문을 실행할 수 있습니까?

+2

2 부분으로 된 이름을 사용 [Red-Gate SQL 다중 스크립트] (http://www.red-gate.com/products/dba/sql-multi-script/) –

답변

4

신속하고 더러운

EXEC sp_MSForEachDB ' 
USE ? 
IF DB_NAME() LIKE ''Shop%'' 
    UPDATE [dbo].[StringResource] 
    SET [ConfigValue] = '''' 
WHERE [Name] = ''default.aspx.1'' 
' 

참고 : 나는 예를 들어, 페이지의 "Shop_Benelux_2012"하지 않고,

+0

오직 '_2012' –

+0

@ Super2 인 데이터베이스 만 업데이트하려고합니다. : 'LIKE'를 'Shop % 2012'로 변경하십시오. – gbn