sys.sp_rda_set_query_mode(Transact-SQL)

적용 대상: SQL Server 2016(13.x) 이상 버전

현재 스트레치 사용 데이터베이스와 해당 테이블에 대한 쿼리가 로컬 및 원격 데이터(기본값) 또는 로컬 데이터만 반환하는지 여부를 지정합니다.

Important

Stretch Database는 SQL Server 2022(16.x) 및 Azure SQL Database에서 더 이상 사용되지 않습니다. 이 기능은 이후 버전의 데이터베이스 엔진 제거됩니다. 새 개발 작업에서는 이 기능을 사용하지 않도록 하고, 현재 이 기능을 사용하는 애플리케이션은 수정하세요.

Transact-SQL 구문 표기 규칙

구문

sp_rda_set_query_mode
    [ @mode = ] @mode
    [ , [ @force = ] @force ]
[ ; ]

인수

[ @mode = ] @mode

다음 값 중 하나:

  • DISABLED 스트레치 사용 테이블에 대한 모든 쿼리가 실패합니다.

  • LOCAL_ONLY 스트레치 사용 테이블에 대한 쿼리는 로컬 데이터만 반환합니다.

  • LOCAL_AND_REMOTE 스트레치 사용 테이블에 대한 쿼리는 로컬 및 원격 데이터를 모두 반환합니다. 이 옵션은 기본 동작입니다.

[ @force = ] @force

유효성 검사 없이 쿼리 모드를 변경하려는 경우 1로 설정할 수 있는 선택적 비트 값입니다.

반환 코드 값

0 (성공) 또는 > 0 (실패).

사용 권한

db_owner 권한이 필요합니다.

설명

다음 확장 저장 프로시저는 스트레치 사용 데이터베이스에 대한 쿼리 모드도 설정합니다.

  • sp_rda_deauthorize_db:

    실행 sp_rda_deauthorize_db 한 후에는 스트레치 사용 데이터베이스 및 테이블에 대한 모든 쿼리가 실패합니다. 즉, 쿼리 모드가 .로 DISABLED설정됩니다. 이 모드를 종료하려면 다음 중 하나를 수행합니다.

    • sys.sp_rda_reauthorize_db(Transact-SQL)를 실행하여 원격 Azure 데이터베이스에 다시 연결합니다. 이 작업은 Stretch Database의 기본 동작인 쿼리 모드를 LOCAL_AND_REMOTE자동으로 다시 설정합니다. 즉, 쿼리는 로컬 데이터와 원격 데이터 모두에서 결과를 반환합니다.

    • 인수를 LOCAL_ONLY 사용하여 sys.sp_rda_set_query_mode 실행하여 로컬 데이터에 대해서만 쿼리를 계속 실행할 수 있도록 합니다.

  • sp_rda_reauthorize_db:

    sys.sp_rda_reauthorize_db(Transact-SQL)를 실행하여 원격 Azure 데이터베이스에 다시 연결하는 경우 이 작업은 스트레치 데이터베이스의 기본 동작인 쿼리 모드를 LOCAL_AND_REMOTE자동으로 다시 설정합니다. 즉, 쿼리는 로컬 데이터와 원격 데이터 모두에서 결과를 반환합니다.