토토 캔 만들기이름[ 그대로 ]데이터_유형[ 기본값표현 ]
    [ 제약[ ... ] ]
어디서제약다음과 같습니다:
[ 제약 조건제약_이름]
 NULL이 아님 | NULL | 확인(표현) }
토토 캔 만들기새 도메인을 생성합니다. 에이 도메인은 본질적으로 선택적 제약 조건이 있는 데이터 유형입니다. (허용되는 값 세트에 대한 제한사항) 정의하는 사용자 도메인이 소유자가 됩니다.
스키마 이름이 제공된 경우(예:토토 캔 myschema.mydomain 생성 ...) 그런 다음 도메인은 지정된 스키마에 생성됩니다. 그렇지 않으면 그것은 현재 스키마에서 생성되었습니다. 도메인 이름은 고유해야 합니다. 해당 스키마에 존재하는 유형 및 도메인 중에서.
도메인은 공통 제약 조건을 추상화하는 데 유용합니다. 유지 관리를 위해 단일 위치에 필드를 배치합니다. 예를 들어, 여러 테이블에 이메일 주소 열이 포함될 수 있습니다. 주소 구문을 확인하기 위해 동일한 CHECK 제약 조건을 사용합니다. 정의하다 각 테이블의 제약 조건을 설정하는 대신 도메인 개별적으로.
도메인의 이름(선택적으로 스키마 한정) 생성되었습니다.
도메인의 기본 데이터 유형. 여기에는 다음이 포함될 수 있습니다. 배열 지정자.
그기본값절은 다음을 지정합니다. 도메인 데이터 유형의 열에 대한 기본값입니다. 는 value는 변수가 없는 표현식입니다(그러나 하위 쿼리는 허용되지 않음). 기본 표현식의 데이터 유형은 다음과 같아야 합니다. 도메인의 데이터 유형과 일치합니다. 기본값이 없는 경우 지정된 경우 기본값은 null 값입니다.
기본 표현식은 모든 삽입에 사용됩니다 열의 값을 지정하지 않는 작업입니다. 만약에 특정 열에 대해 기본값이 정의되어 있는 경우 도메인과 관련된 모든 기본값을 재정의합니다. 차례로, 도메인 기본값은 연결된 모든 기본값을 재정의합니다. 기본 데이터 유형을 사용합니다.
제약조건에 대한 선택적 이름입니다. 지정하지 않은 경우, 시스템이 이름을 생성합니다.
이 토토 캔의 값은 null이 될 수 없습니다.
이 도메인의 값은 null이 허용됩니다. 이것은 기본값입니다.
이 조항은 다음과의 호환성만을 위한 것입니다. 비표준 SQL 데이터베이스. 신규에서는 사용을 권장하지 않습니다. 응용 프로그램.
확인절은 무결성을 지정합니다. 도메인의 값이 어떤 값을 가져야 하는지 제약 또는 테스트 만족하다. 각 제약조건은 다음을 생성하는 표현식이어야 합니다. 부울 결과. 키워드를 사용해야 합니다.값값을 참조하려면 테스트를 거쳤습니다.
현재,확인표현 하위 쿼리를 포함하거나 이외의 변수를 참조할 수 없습니다.값.
이 예는 다음을 생성합니다.us_postal_code데이터 유형을 선택한 다음 테이블 정의의 유형을 사용합니다. 정규 표현식 테스트는 값이 다음과 같은지 확인하는 데 사용됩니다. 유효한 미국 우편번호:
DOMAIN us_postal_code를 텍스트로 생성 확인( 값 ~ '^\\d5$' 또는 값 ~ '^\\d5-\\d4$' ); 테이블 만들기 us_snail_addy( address_id 직렬 기본 키, street1 텍스트는 NULL이 아닙니다. 스트리트 2 텍스트, 스트리트 3 텍스트, 도시 텍스트는 NULL이 아닙니다. 우편번호 us_postal_code NOT NULL );