적용 대상:SQL 서버
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
분석 플랫폼 시스템(PDW)
Microsoft Fabric의 SQL 데이터베이스
SQL Server의 지정된 데이터베이스에 대해 이 함수는 DATABASEPROPERTYEX 지정된 데이터베이스 옵션 또는 속성의 현재 설정을 반환합니다.
구문
DATABASEPROPERTYEX ( database , property )
인수
데이터베이스
명명된 속성 정보를 반환하는 데이터베이스의 이름을 지정하는 DATABASEPROPERTYEX 식입니다.
database에는 nvarchar(128) 데이터 형식이 있습니다.
SQL Database에서는 DATABASEPROPERTYEX에 현재 데이터베이스의 이름을 반환합니다. 다른 데이터베이스 이름이 지정된 경우 모든 속성에 대해 반환 NULL 됩니다.
속성
반환할 데이터베이스 속성의 이름을 나타내는 식입니다. property에는 varchar(128) 데이터 형식이 있고, 이 표의 값 중 하나가 지원됩니다.
참고
데이터베이스가 아직 시작되지 않은 경우 메타데이터에서 검색하는 DATABASEPROPERTYEX 대신 직접 데이터베이스 액세스로 해당 값을 검색하는 경우 NULL 반환 DATABASEPROPERTYEX 을 호출합니다. 오프라인으로 AUTO_CLOSE 설정된 ON데이터베이스는 '시작되지 않음'으로 정의됩니다.
| 속성 | 설명 | 반환 값 |
|---|---|---|
Collation데이터 형식: nvarchar(128) |
데이터베이스의 기본 데이터 정렬 이름입니다. | 데이터 정렬 이름입니다. 이 경우 NULL데이터베이스가 시작되지 않습니다. |
ComparisonStyle데이터 형식: int |
데이터 정렬의 Windows 비교 스타일입니다. 다음 스타일 값을 사용하여 완성 ComparisonStyle 된 값에 대한 비트맵을 작성합니다.- 1: 대/소문자 무시- 2: 악센트 무시- 65536: 가나 무시- 131072: 너비 무시예를 들어 기본값 196609 은 대/소문자 무시, 가나 무시 및 너비 옵션 무시 를 결합한 결과입니다. |
비교 스타일을 반환합니다.0 모든 이진 데이터 정렬을 반환합니다. |
Edition데이터 형식: nvarchar(64) |
데이터베이스 버전 또는 서비스 계층입니다. | - General Purpose- Business Critical- Basic- Standard- Premium- System (데이터베이스의 경우 master )- FabricSQLDB: Microsoft Fabric의 SQL 데이터베이스- NULL: 데이터베이스가 시작되지 않았습니다.적용 대상: Azure SQL 데이터베이스, Microsoft Fabric의 SQL 데이터베이스, Azure Synapse Analytics. |
IsAnsiNullDefault데이터 형식: int |
데이터베이스는 값을 허용하기 NULL 위한 ISO 규칙을 따릅니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsAnsiNullsEnabled데이터 형식: int |
모든 비교를 NULL 알 수 없는 것으로 평가합니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsAnsiPaddingEnabled데이터 형식: int |
비교 또는 삽입하기 전에 문자열이 동일한 길이만큼 채워집니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsAnsiWarningsEnabled데이터 형식: int |
표준 오류 조건이 발생하면 SQL Server에서 오류 메시지나 경고 메시지를 표시합니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsArithmeticAbortEnabled데이터 형식: int |
쿼리 실행 시 오버플로나 0으로 나누기 오류가 발생하면 쿼리가 종료됩니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsAutoClose데이터 형식: int |
마지막 사용자가 끝낸 후 데이터베이스가 완전히 종료되고 리소스가 해제됩니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsAutoCreateStatistics데이터 형식: int |
쿼리 최적화 프로그램에서 필요할 경우 단일 열 통계를 작성하여 쿼리 성능을 향상시킵니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsAutoCreateStatisticsIncremental데이터 형식: int |
가능하면 자동으로 만든 단일 열 통계는 증분합니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력적용 대상: SQL Server 2014(12.x) 이상 버전 |
IsAutoShrink데이터 형식: int |
데이터베이스 파일을 주기적으로 자동 축소합니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsAutoUpdateStatistics데이터 형식: int |
쿼리에서 오래된 기존 통계를 사용할 경우 쿼리 최적화 프로그램이 이러한 통계를 업데이트합니다. |
-
1:참- 0: 거짓- NULL: 입력이 잘못되었습니다. |
IsClone데이터 형식: int |
데이터베이스는 .을 사용하여 만든 DBCC CLONEDATABASE사용자 데이터베이스의 스키마 및 통계 전용 복사본입니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력적용 대상: SQL Server 2014(12.x) SP2 이상 버전. |
IsCloseCursorsOnCommitEnabled데이터 형식: int |
트랜잭션이 커밋되면 열려 있는 모든 커서가 닫힙니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsDatabaseSuspendedForSnapshotBackup데이터 형식: int |
데이터베이스가 일시 중단되었습니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsFulltextEnabled데이터 형식: int |
데이터베이스에 전체 텍스트 및 의미 체계 인덱싱을 사용하도록 설정되어 있습니다. |
-
1:참- 0: 거짓- NULL: 입력이 잘못되었습니다.적용 대상: SQL Server 2008(10.0.x) 이상 버전 참고: 이 속성의 값은 이제 아무런 영향을 주지 않습니다. 사용자 데이터베이스는 전체 텍스트 검색을 사용하도록 항상 설정됩니다. SQL Server의 이후 릴리스에서는 이 속성이 제거될 예정입니다. 새 개발 작업에서 이 속성을 사용하지 말고, 가능한 한 빨리 이 속성을 사용하는 애플리케이션을 수정합니다. |
IsInStandBy데이터 형식: int |
데이터베이스가 로그 복원이 허용된 읽기 전용으로 온라인 상태입니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsLocalCursorsDefault데이터 형식: int |
커서 선언의 기본값은 .입니다 LOCAL. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsMemoryOptimizedElevateToSnapshotEnabled데이터 형식: int |
메모리 최적화 테이블은 세션 설정 SNAPSHOT 이 낮은 격리 수준으로 설정된 경우 격리를 TRANSACTION ISOLATION LEVELREAD COMMITTED사용하여 READ UNCOMMITTED 액세스됩니다. |
-
1:참- 0: 거짓적용 대상: SQL Server 2014(12.x) 이상 버전 |
IsMergePublished데이터 형식: int |
복제가 설치된 경우 SQL Server에서 데이터베이스의 테이블을 병합 복제용으로 게시하도록 지원합니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsNullConcat데이터 형식: int |
Null 연결 피연산자는 .NULL |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsNumericRoundAbortEnabled데이터 형식: int |
식의 전체 자릿수에서 일부가 손실되면 오류가 발생합니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsOptimizedLockingOn데이터 형식: int |
데이터베이스에 대해 최적화된 잠금이 사용하도록 설정됩니다. |
-
1:참- 0: 거짓- NULL: 사용할 수 없음적용 대상: SQL Server 2025 (17.x) 및 이후 버전, Azure SQL 데이터베이스, Azure SQL Managed InstanceAUTD, Microsoft Fabric의 SQL 데이터베이스. |
IsParameterizationForced데이터 형식: int |
PARAMETERIZATION 데이터베이스 SET 옵션은 .입니다 FORCED. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsQuotedIdentifiersEnabled데이터 형식: int |
식별자에 큰따옴표를 사용할 수 있습니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsPublished데이터 형식: int |
복제가 설치된 경우 SQL Server에서 데이터베이스 테이블을 스냅샷 또는 트랜잭션 복제용으로 게시하도록 지원합니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsRecursiveTriggersEnabled데이터 형식: int |
트리거를 재귀적으로 실행하도록 설정합니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsSubscribed데이터 형식: int |
데이터베이스가 게시를 구독합니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsSyncWithBackup데이터 형식: int |
데이터베이스는 게시된 데이터베이스 또는 배포 데이터베이스이며 트랜잭션 복제를 방해하지 않는 복원을 지원합니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsTornPageDetectionEnabled데이터 형식: int |
SQL Server 데이터베이스 엔진에서 정전이나 기타 시스템 중단으로 인해 완료되지 않은 I/O 작업을 검색합니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력 |
IsVerifiedClone데이터 형식: int |
데이터베이스는 옵션을 사용하여 WITH VERIFY_CLONEDB 만든 사용자 데이터베이스의 스키마 및 통계 전용 복사본입니다 DBCC CLONEDATABASE. |
-
1:참- 0: 거짓- NULL: 잘못된 입력적용 대상: SQL Server 2016(13.x) SP2 이상 버전. |
IsXTPSupported데이터 형식: int |
데이터베이스가 In-Memory OLTP를 지원하는지 여부를 나타냅니다. 예를 들어 메모리 최적화 테이블 및 원시 컴파일 모듈의 제작과 사용이 그렇습니다. SQL Server에만 해당 : IsXTPSupported는 In-Memory OLTP 개체를 만드는 데 필요한 파일 그룹의 존재 MEMORY_OPTIMIZED_DATA 와는 독립적입니다. |
-
1:참- 0: 거짓- NULL: 잘못된 입력, 오류 또는 해당 없음적용 대상: SQL Server 2016(13.x) 이상 버전 및 Azure SQL Database. |
LastGoodCheckDbTime데이터 형식: 날짜/시간 |
지정된 데이터베이스에서 실행된 마지막 성공 DBCC CHECKDB 날짜 및 시간입니다. 데이터베이스 DBCC CHECKDB 에서 실행되지 않은 경우 1900-01-01 00:00:00.000 반환됩니다. 가용성 그룹의 LastGoodCheckDbTime 일부인 데이터베이스의 경우 명령을 실행한 복제본에 관계없이 주 복제본에서 실행된 마지막 성공 DBCC CHECKDB 날짜와 시간을 반환합니다. |
NULL: 잘못된 입력적용 대상: SQL Server 2016 (13.x) SP2, SQL Server 2017 (14.x) CU9, SQL Server 2019 (15.x) 이후 버전, Azure SQL 데이터베이스, Microsoft Fabric의 SQL 데이터베이스. |
LCID데이터 형식: int |
데이터 정렬의 Windows LCID(로캘 ID)입니다. | LCID 값(10진수 형식)입니다. |
MaxSizeInBytes데이터 형식: bigint |
최대 데이터베이스 크기(바이트)입니다. |
-
Azure SQL Database 및 Azure Synapse Analytics: 추가 스토리지를 구입하지 않는 한 값은 SLO를 기반으로 합니다. - vCore: 값은 최대 크기까지 1GB씩 증가합니다. - NULL: 데이터베이스가 시작되지 않음적용 대상: Azure SQL 데이터베이스, Microsoft Fabric의 SQL 데이터베이스, Azure Synapse Analytics. |
Recovery데이터 형식: nvarchar(128) |
데이터베이스 복구 모델. |
-
FULL: 전체 복구 모델- BULK_LOGGED: 대량 로그된 모델- SIMPLE: 단순 복구 모델 |
ServiceObjective데이터 형식: nvarchar(32) |
SQL 데이터베이스, Microsoft Fabric의 SQL 데이터베이스, Azure Synapse Analytics의 데이터베이스 성능 수준을 설명합니다. | 다음 값 중 하나입니다. - NULL: 데이터베이스가 시작되지 않음- Shared (Web/Business 버전의 경우)- Basic- S0- S1- S2- S3- P1- P2- P3- ElasticPool- System (데이터베이스의 경우 master )- FabricSQLDB: Microsoft Fabric의 SQL 데이터베이스 |
ServiceObjectiveId데이터 형식: uniqueidentifier |
SQL Database의 서비스 목표 ID입니다. | 서비스 목표의 ID입니다. |
SQLSortOrder데이터 형식: tinyint |
이전 버전의 SQL Server에서 지원하는 SQL Server 정렬 순서 ID입니다. |
-
0: 데이터베이스에서 Windows 데이터 정렬 사용- >0: SQL Server 정렬 순서 ID- NULL: 입력이 잘못되었거나 데이터베이스가 시작되지 않았습니다. |
Status데이터 형식: nvarchar(128) |
데이터베이스 상태입니다. |
ONLINE: 데이터베이스를 쿼리에 사용할 수 있습니다.메모: 이 함수는 데이터베이스가 열리고 아직 복구되지 않은 동안의 ONLINE 상태를 반환할 수 있습니다. 데이터베이스가 ONLINE 연결을 허용할 수 있는지 확인하려면 .의 CollationDATABASEPROPERTYEX속성을 쿼리합니다. 데이터베이스 데이터 정렬이 ONLINE null이 아닌 값을 반환하는 경우 데이터베이스는 연결을 허용할 수 있습니다. Always On 데이터베이스의 database_statedatabase_state_descsys.dm_hadr_database_replica_states경우 .- OFFLINE: 데이터베이스가 명시적으로 오프라인으로 전환되었습니다.- RESTORING: 데이터베이스 복원이 시작되었습니다.- RECOVERING: 데이터베이스 복구가 시작되었으며 데이터베이스가 아직 쿼리할 준비가 되지 않았습니다.- SUSPECT: 데이터베이스가 복구되지 않았습니다.- EMERGENCY: 데이터베이스가 비상, 읽기 전용 상태입니다. 액세스는 sysadmin 멤버로 제한됩니다. |
Updateability데이터 형식: nvarchar(128) |
데이터 수정 가능 여부를 나타냅니다. |
READ_ONLY: 데이터베이스는 데이터 읽기를 지원하지만 데이터 수정은 지원하지 않습니다.- READ_WRITE: 데이터베이스는 데이터 읽기 및 수정을 지원합니다. |
UserAccess데이터 형식: nvarchar(128) |
데이터베이스에 액세스할 수 있는 사용자를 나타냅니다. |
SINGLE_USER: 한 번에 하나의 db_owner, dbcreator 또는 sysadmin 사용자만- RESTRICTED_USER: db_owner, dbcreator 또는 sysadmin 역할의 멤버만- MULTI_USER: 모든 사용자 |
Version데이터 형식: int |
데이터베이스가 만들어진 SQL Server 코드의 내부 버전 번호입니다. 정보를 제공하기 위해서만 확인됩니다. 지원 안 됨. 향후 호환성은 보장되지 않습니다. | - 버전 번호: 데이터베이스가 열려 있습니다. - NULL: 데이터베이스가 시작되지 않았습니다. |
ReplicaID데이터 형식: nvarchar(128) |
연결된 하이퍼스케일 데이터베이스/복제본의 복제본 ID입니다. | 연결된 하이퍼스케일 데이터베이스/복제본의 복제본 ID만 반환합니다. 복제본 유형에 대한 자세한 내용은 하이퍼스케일 보조 복제본을 참조하세요. - NULL: 하이퍼스케일 데이터베이스가 아니거나 데이터베이스가 시작되지 않았습니다.적용 대상: Azure SQL Database 하이퍼스케일. |
반환 형식
sql_variant
예외
오류가 발생하거나 호출자에게 개체를 볼 수 있는 권한이 없는 경우 반환 NULL 합니다.
SQL Server에서 사용자는 소유하고 있거나 사용 권한을 부여받은 보안 개체의 메타데이터만 볼 수 있습니다. 이 규칙은 사용자에게 개체에 대한 권한이 없는 경우 반환 OBJECT_ID 할 수 있는 NULL 메타데이터 내보내기 기본 제공 함수를 의미합니다. 자세한 내용은 메타데이터 표시 유형 구성을 참조하세요.
설명
DATABASEPROPERTYEX는 한 번에 하나의 속성 설정만 반환합니다. 여러 속성 설정을 표시하려면 sys.databases 카탈로그 뷰를 사용하세요.
예제
이 문서의 코드 샘플은 AdventureWorks2025 또는 AdventureWorksDW2025 샘플 데이터베이스를 사용합니다. 이 데이터베이스는 Microsoft SQL Server 샘플 및 커뮤니티 프로젝트 홈페이지에서 다운로드할 수 있습니다.
A. AUTO_SHRINK 데이터베이스 옵션의 상태 검색
이 예제에서는 데이터베이스에 AUTO_SHRINK 대한 데이터베이스 옵션의 상태를 반환합니다 AdventureWorks .
SELECT DATABASEPROPERTYEX('AdventureWorks2022', 'IsAutoShrink');
결과 집합은 다음과 같습니다. 이는 꺼져 있음을 AUTO_SHRINK 나타냅니다.
0
B. 데이터베이스의 기본 데이터 정렬 검색
이 예에서는 AdventureWorks 데이터베이스의 여러 속성을 반환합니다.
SELECT DATABASEPROPERTYEX('AdventureWorks2022', 'Collation') AS Collation,
DATABASEPROPERTYEX('AdventureWorks2022', 'Edition') AS Edition,
DATABASEPROPERTYEX('AdventureWorks2022', 'ServiceObjective') AS ServiceObjective,
DATABASEPROPERTYEX('AdventureWorks2022', 'MaxSizeInBytes') AS MaxSizeInBytes;
결과 집합은 다음과 같습니다.
Collation Edition ServiceObjective MaxSizeInBytes
---------------------------- ------------- ---------------- --------------
SQL_Latin1_General_CP1_CI_AS DataWarehouse DW1000 5368709120
C. DATABASEPROPERTYEX를 사용하여 복제본에 대한 연결 확인
Azure SQL Database 스케일 아웃 기능을 사용하는 경우 데이터베이스 컨텍스트에서 다음 쿼리를 실행하여 읽기 전용 복제본에 연결되어 있는지 여부를 확인할 수 있습니다. 읽기 전용 복제본에 연결되면 반환 READ_ONLY 됩니다. 이 방식으로, 읽기 전용 복제본에서 쿼리가 실행되는 경우를 식별할 수도 있습니다.
SELECT DATABASEPROPERTYEX(DB_NAME(), 'Updateability');