이것은 MS SQL 2005 용입니다. 누구나 처음 성공한 이유를 알 수 있습니다. 그런 다음 연속해서 동일한 명령문 두 개가 실패합니다. 모든 진술은 정확히 동일합니다. 큰 따옴표를 두 개의 작은 따옴표로 변경하면 동일한 효과가 나타납니다.sp_MSforeachdb MS SQL 오류
sp
_
MSforeachdb @ command1 = 'if (left ("?", 2) = "p_
") 시작; 인쇄 "?"; 종료;';는
페이지를
_
NationalBrands
페이지_
NonBrand
페이지_
데이터베이스_
가_
으로_
P_
언더
하지만
을 시작
_
그건_
이름을 생성 sp_
MSforeachdb @ command1 = 'if (왼쪽 ("?", 2) = "p_
") 시작; 인쇄 "?"; 종료;';
sp_
MSforeachdb @ command1 = 'if (왼쪽 ("?", 2) = "p_
") 시작; 인쇄 "?"; 종료;';는
메시지 102, 수준 15, 상태 1, 줄 2 근처의 구문이 잘못되었습니다 'sp_MSforeachdb'을 생산하고 있습니다.
당신은 그 방법으로 여러 발동를 호출 할 때 명시 적으로 Exec에서 사용할 필요가
실제로 첫 번째 호출 이후에만 exec가 필요합니다. (개인적으로 나는 스타일의 문제로 두 가지 모두에 적용 할 것이지만 필수는 아닙니다.) – cmsjr