SQL Server : PRINT 출력이 즉시 나타나지 않습니다.


78

SQL Server 2005 Management Studio에서 PRINT 문의 출력이 즉시 나타나지 않는 것처럼 보입니다. PRINT 문 뒤에 장기 실행 문이있는 경우 다음 문이 나올 때까지 PRINT 출력이 나타나지 않습니다.

출력을 더 일찍 플러시하는 방법이 있습니까? 완료하는 데 시간이 걸리는 업그레이드 스크립트를 실행 중이며 스크립트가 얼마나 진행되는지 알고 싶습니다 (그래서 몇 분 동안 기다렸다가 다음 스크립트를 시작할지 또는 점심 식사에 갈지 여부를 알고 싶습니다.) ).


1
PRINT와 장기 실행 문 사이에 "GO"가 있습니까?
Bernhard Hofmann


1
로저 : blog.differentpla.net/blog/2006/10/19/… 에서 당신의 외침봤습니다 . 나도 같은 불만이 있습니다. 다른 모든 중요한 정보를 가득 채우는 짧은 공간에서 내 로그인 정보와 "SQLQuery999.sql"이라는 단어를 확인해야하는 이유는 무엇입니까?! 아무 것도 변하지 않지만 당신이 말하는 것을 보니 기쁩니다. 저는 서버 탐색기를 사용하여 Visual Studio에서 제공하는 인터페이스를 사용하여 치명적인 사고가 덜 발생할 수 있도록해야합니다.
Jenna Leaf

답변:


122

아니요. 트랜잭션이 커밋되거나 다른 레코드 집합이 반환되거나 문이 완료 될 때만 반환됩니다 ( goSQL 일괄 처리의 문 종결 자). 치명적이지 않은 오류 수준 (0-18)에서 raiserror 를 사용 하여 이러한 종류의 즉각적인 피드백을 얻을 수 있습니다. 예를 들면 :

RAISERROR ('Foo', 10, 1) WITH NOWAIT

내 테스트에서 RAISERROR 전에 인쇄가 인쇄됩니다
크레이그 Efrein에게

3
인쇄는 RAISERROR의 출력 전에 표시되지만 예외가 발생할 때까지 클라이언트에 반환되지 않습니다.
ConcernedOfTunbridgeWells
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.