강좌

HOME > 강좌 >
강좌| 리눅스 및 오픈소스에 관련된 강좌를 보실 수 있습니다.
 
테이블 생성 및 삭제 SQL 구문
조회 : 5,943  


테이블 생성 및 삭제 SQL 구문
1. CREATE TABLE
테이블 생성을 위해서 CREATE TABLE 구문을 이용한다.

CREATE{ CLASS | TABLE } table_name
[ {UNDER | AS SUBCLASS OF } super_class_name [ {, super_class_name }_ ] ]
TABLE ATTRIBUTE
( table_attr_definition_list ) ]
[ ( attr_definition | table_constraint
[ { , attr_definition | table_constraint_definition }_ ] ) ]
[ METHOD method_definition_list ] ]
[ FILE path_name_list ] ]
[ INHERIT resolution_list [ {, resolution_list }_ ] ] [ ; ]
super_class_name :
[ user_name.]classname
table_attr_definition :
attribute_name datatype { [ DEFAULT value ] | [ NOT NULL ] }
attr_definition :
attribute_name datatype [ { SHARED [ value ] | DEFAULT value } ] [AUTO_INCREMENT ...] [ constraints ]
constraints :
NOT NULL
UNIQUE
PRIMARY KEY
FOREIGN KEY ...
table_constraint_definition :
[ CONSTRAINT constraint_name ] {[ UNIQUE | PRIMARY KEY | FOREIGN KEY ]}
(attribute_name [{, attribute_name} ...])
method_definition :
[ CLASS ] method_name [ ( [ arg_type_list ] ) ]
[ result_type ] [ FUNCTION method_implementation_name ]
arg_type :
datatype
result_type :
datatype
resolution_list :
attr_mthd_name OF super_class_name [ AS alias ]

table_name : 생성할 테이블 이름을 지정한다.
attr_definition :
- attribute_name : 생성할 컬럼의 이름을 지정한다.
- datatype : 컬럼의 데이터 타입을 지정한다.
- [SHARED [ value ] | DEFAULT value ] : 컬럼의 초기값을 지정한다.
- constraints : 컬럼의 제약 조건을 지정하며 제약 조건의 종류에는 NOT NULL, UNIQUE, PRIMARY KEY, FOREIGN KEY가 있다.
다음은 데모로 제공된 올림픽 데이터베이스의 olympic 테이블을 생성하는 예제이다.

 CREATE TABLE olympic (
   host_year        INT    NOT NULL PRIMARY KEY,
   host_nation      VARCHAR(40) NOT NULL,
   host_city        VARCHAR(20) NOT NULL,
   opening_date     DATE        NOT NULL,
   closing_date     DATE        NOT NULL,
   mascot           VARCHAR(20) ,
   slogan           VARCHAR(40) ,
   introduction     VARCHAR(1500)
);

2. DROP TABLE
DROP 구문을 이용하여 기존의 테이블을 삭제할 수 있다. 한 DROP 구문으로 여러 개의 테이블을 삭제할 수 있으며 테이블이 삭제되면 포함된 인스턴스도 모두 삭제된다.

DROP [ table_type ] table_spec [ { ,table_spec }_ ] [ ; ]

table_type:
[TABLE | CLASS]
[VIEW | VCLASS]

table_spec:
single_table_spec
( single_table_spec [ { , single_class_spec }_ ] )

single_table_spec:
[ ONLY ] table_name
ALL table_name [ ( EXCEPT table_spec ) ]

table_type : 변경할 테이블의 종류를 일반 테이블과 가상 테이블 중 하나를 지정한다.
table_name : 삭제할 테이블의 이름을 지정한다.
다음은 history 테이블을 삭제하는 예제이다.

DROP TABLE history;


[원글링크] : https://www.linux.co.kr/home2/board/subbs/board.php?bo_table=lecture&wr_id=1602


이 글을 트위터로 보내기 이 글을 페이스북으로 보내기 이 글을 미투데이로 보내기

 
큐브리드