> 데이터 베이스 > MySQL 튜토리얼 > SQL Server 스크립트가 조기에 실행되는 것을 어떻게 중지할 수 있습니까?

SQL Server 스크립트가 조기에 실행되는 것을 어떻게 중지할 수 있습니까?

Mary-Kate Olsen
풀어 주다: 2025-01-09 07:07:46
원래의
511명이 탐색했습니다.

How Can I Stop a SQL Server Script from Running Prematurely?

SQL Server 스크립트 실행 조기 종료

SQL Server에서는 스크립트 논리의 일부 유효성 검사나 조회가 실패할 경우 스크립트 실행을 조기에 중지해야 할 수도 있습니다. 이를 달성하는 두 가지 방법은 다음과 같습니다.

1. RAISERROR 방식

raiserror 문은 심각도 수준이 20 이상인 오류를 발생시키고 WITH LOG 옵션을 지정하여 스크립트 실행을 종료하는 데 사용할 수 있습니다. 예시는 다음과 같습니다.

<code class="language-sql">raiserror('发生致命错误', 20, -1) with log</code>
로그인 후 복사

이렇게 하면 현재 연결이 종료되어 나머지 스크립트가 실행되지 않습니다. 이 방법에는 sysadmin 역할 권한이 필요합니다.

2.NOEXEC 방식

GO 문과 함께 사용하는 또 다른 방법은 noexec on을 설정하는 것입니다. 이렇게 하면 나머지 스크립트의 실행이 비활성화됩니다. 예:

<code class="language-sql">print 'hi'
go

print '致命错误,脚本将不会继续!'
set noexec on

print 'ho'
go</code>
로그인 후 복사

이 메서드는 연결을 종료하지 않지만 noexec가 다시 닫힐 때까지 후속 코드 실행을 건너뜁니다. SQL Server Management Studio에서는 실행을 재개하려면 set noexec off 명령을 실행해야 할 수도 있습니다.

이러한 방법을 사용할 때는 다음 사항을 염두에 두시기 바랍니다.

  • RAISERROR에는 시스템 관리자 권한이 필요하며 데이터베이스 연결이 끊어질 수 있습니다.
  • sysadmin으로 로그인하지 않은 경우 RAISERROR가 실패하고 스크립트가 계속 실행됩니다.
  • NOEXEC에는 sysadmin 권한이 필요하지 않지만 후속 코드를 실행하기 전에 명시적으로 비활성화해야 합니다.

위 내용은 SQL Server 스크립트가 조기에 실행되는 것을 어떻게 중지할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿