열거 된 (ENUM) 유형은 다음으로 구성된 데이터 유형입니다. 특정 순서로 정적, 사전 정의 된 값 세트. 그들은입니다 에 해당합니다.enum다수의 유형 프로그래밍 언어. 열거 유형의 예는 다음과 같습니다 요일 또는 한 조각의 상태 값 세트 데이터.
enum 유형은를 사용하여 생성됩니다.스포츠 토토 사이트 만들기명령, 예 :
ENUM ( 'sad', 'ok', 'happy')로 스포츠 토토 사이트 분위기 생성;
일단 생성되면 열거 스포츠 토토 사이트은 테이블에서 사용할 수 있습니다. 다른 스포츠 토토 사이트과 마찬가지로 함수 정의 :
열거 형 값의 순서는 순서입니다. 유형이 선언 될 때 값이 나열되었습니다. 모두 표준 비교 연산자 및 관련 골재 기능 열거적으로 지원됩니다. 예를 들어:
예 8-4. 열거
개인 값에 삽입 ( 'larry', 'sad'); 개인 값에 삽입 ( 'Curly', 'Ok'); Current_mood 'SAD'가있는 사람에서 *를 선택하십시오. 이름 | current_mood -------+------------- 모에 | 행복하다 곱슬 | 좋아요 (2 줄) current_mood 'SAD'순서가있는 사람 중에서 선택 *을 선택하십시오. current_mood; 이름 | current_mood -------+------------- 곱슬 | 좋아요 모에 | 행복하다 (2 줄) 사람에서 이름을 선택하십시오 여기서 current_mood = (개인에서 select min (current_mood)); 이름 ------- 래리 (1 행)
열거 된 스포츠 토토 사이트은 완전히 별도의 데이터 스포츠 토토 사이트이며 5 월입니다 서로 비교되지 않습니다.
예 8-5. 캐스팅 부족
ENUM ( 'Happy', 'Breat Happy', 'Ecstatic'으로 유형의 행복을 만듭니다. 휴일 생성 ( num_weeks int, 행복 행복 ); 휴일에 삽입 (NUM_WEEK, 행복) 값 (4, 'Happy'); 휴일에 삽입 (Num_weeks, Happiness) 값 (6, '매우 행복'); 휴일에 삽입 (Num_weeks, Happiness) 값 (8, 'Ecstatic'); 휴일에 삽입 (Num_weeks, Happiness) 값 (2, 'SAD'); 오류 : 열거 행복을위한 잘못된 입력 값 : "SAD" Person.name, Holidays.num_weeks, Person, Holidays를 선택하십시오 person.current_mood = holidays.happiness. 오류 : 운영자가 존재하지 않습니다 : mood = 행복
실제로 그런 일을해야한다면, 당신은 사용자 정의 연산자를 작성하거나 명시 적 캐스트를 추가하십시오. 질문:
열거 값은 디스크에서 4 바이트를 차지합니다. An의 길이 열거 값의 텍스트 레이블은에 의해 제한됩니다.지명설정 설정postgresql; 표준 빌드에서는이를 의미합니다 최대 63 바이트.
ENUM 레이블은 사례에 민감하므로'행복한''행복한'. 라벨의 공간은 중요합니다. 도.