1. 테이블 생성 시에 주의해야 할 몇 가지 규칙
- 테이블 이름을 지정하고 각 컬럼들은 괄호 “( )”로 묶어 지정한다.
- 컬럼 뒤에 데이터 유형은 꼭 지정되어야 한다.
- 테이블명과 컬럼명은 반드시 문자로 시작해야되고, 벤더별로 길이에 대한 한계가 있다.
- A-Z, a-z, 0-9, _, $, # 문자만 허용된다.
2. 테이블 생성 예제에서 추가적인 주의 사항
- 테이블 생성 시 대/소문자 구분은 하지 않는다. 기본적으로 테이블이나 컬럼명은 대문자로 만들어짐
- DATETIME 데이터 유형에는 별도로 크기를 지정하지 않는다.
- 문자 데이터 유형은 반드시 가질 수 있는 최대 길이를 표시해야 한다.
- 컬럼에 대한 제약조건이 있으면 CONSTRAINT를 이용하여 추가할 수 있다.
ALTER TABLE
1. ADD COLUMN: 컬럼 추가 EX) ALTER TABLE PLAYER ADD (ADDRESS VARCHAR2(80));
2. MODIFY COLUMN: 컬럼의 데이터 유형, 디폴트값, NOTNULL 제약조건에 대한 변경
EX) ALTER TABLE PLAYER MODIFY (ADDRESS VARCHAR2(80) DEFAULT ‘기타’ NOT NULL)
- 크기를 늘릴 수는 있지만 줄이지는 못한다.
- NULL 값만 가지고 있거나 테이블에 아무 행도 없으면 컬럼의 폭을 줄일 수 있다.
- NULL 값만을 가지고 있으면 데이터 유형을 변경할 수 있다.
- DEFAULT 값을 바꾸면 변경 작업 이후 발생하는 행 삽입에만 영향을 미치게 된다.
3. RENAME COLUMN: 컬럼명 변경할 때
EX) ALTER TABLE PLAYER RENAME COLUMN 변경해야 할 컬럼명 TO 새로운 컬럼명;
- RENAME TABLE은 테이블 명을 변경.. EX) RENAME 변경전 테이블명 TO 변경후 테이블명;
4. DROP CONSTRAINT: 제약조건 삭제 명령어
EX) ALTER TABLE 테이블명 DROP CONSTRAINT 제약조건명;
5. ADD CONSTRAINT: 제약조건을 추가하는 명령어
EX) ALTER TABLE 테이블명 ADD CONSTRAINT 제약조건명 제약조건 (컬럼명)
EX) ALTER TABLE PLAYER ADD CONSTRAINT PLAYER_FK FOREIGN KEY(TEAM_ID) REFERENCES TEAM(TEAM_ID);
DROP TABLE: 테이블 삭제 EX) DROP TABLE 테이블명 CASCADE CONSTRAINT;
- 실행결과에서 좌측 정렬되어있는 것은 문자 및 날짜 데이터이고.. 우측 정렬되어있는 것은 숫자 데이터임.