기본 테이블을 정의하기 위한 정의문의 형식
이 구문에서 "[ ]"로 묶여진 부분은 생략 가능 부분이고, "{ }"로 묶어진 부분은 중복 가능 부분을 나타내는데 +는 1번 이상, *는 0번 이상 반복을 나타낸다. 구문 표현에서 +나 * 앞에 ,는 반복되는 요소들이 ,로 분리된다는 것을 나타낸다.
EX)
CREATE TABLE 기본테이블
({열_이름 데이타_타입 [NOT NULL] [DEFAULT 값],}+
[PRIMARY KEY (열_이름_리스트),]
{[UNIQUE (열_이름_리스트),]}*
{[FOREIGN KEY (열_이름_리스트)
[PRIMARY KEY (열_이름_리스트),]
{[UNIQUE (열_이름_리스트),]}*
{[FOREIGN KEY (열_이름_리스트)
REFERENCES 기본테이블[(열_이름_리스트)]
[ON DELETE 옵션]
[ON UPDATE 옵션],]}*
[CONSTRAINT 이름] [CHECK(조건식)]);
[ON DELETE 옵션]
[ON UPDATE 옵션],]}*
[CONSTRAINT 이름] [CHECK(조건식)]);
이 구문에서 "[ ]"로 묶여진 부분은 생략 가능 부분이고, "{ }"로 묶어진 부분은 중복 가능 부분을 나타내는데 +는 1번 이상, *는 0번 이상 반복을 나타낸다. 구문 표현에서 +나 * 앞에 ,는 반복되는 요소들이 ,로 분리된다는 것을 나타낸다.
EX)
CREATE TABLE ENROL
( Sno INT NOT NULL,
Cno CHAR(6) NOT NULL,
Grade INT,
PRIMARY KEY ( Sno, Cno ),
FOREIGN KEY ( Sno ) REFERENCES STUDENT ( Sno )
Cno CHAR(6) NOT NULL,
Grade INT,
PRIMARY KEY ( Sno, Cno ),
FOREIGN KEY ( Sno ) REFERENCES STUDENT ( Sno )
ON DELETE CASCADE
ON UPDATE CASCADE,
ON UPDATE CASCADE,
FOREUGN KEY ( Cno ) REFERENCES COURSE
ON DELETE CASCADE
ON UPDATE CASCADE,
ON UPDATE CASCADE,
CHECK ( Grade >= 0 AND Grade <= 100);
'데이터베이스 > MySQL' 카테고리의 다른 글
AUTOCOMMIT (0) | 2011.10.17 |
---|---|
SQL 검색문 (0) | 2011.10.17 |
foreign key - 참조키 (0) | 2011.08.26 |
데이터베이스 - 스키마 (0) | 2011.08.25 |
결과의 갯수를 제한 - LIMIT (0) | 2011.08.24 |