ALTER TABLE 테이블명 MODIFY 변수명 데이터타입 ;
위의 쿼리문으로 변수 데이터 타입 변경할 시,
ORA-01439: column to be modified must be empty to change datatype
데이터 유형을 변경할 열은 비어 있어야 합니다
이러한 결과의 오류를 발견한 경우 ! 다음과 같이 변경되어야 합니다 ~
1. 데이터가 없는 컬럼 타입 변경
: 첫째 줄의 쿼리문과 같이 변경하면 됨.
** 같은 데이터 타입에서 크기만 변경될 경우 사용 !!
예시) COL2컬럼을 VARCHAR2(10)에서 VARCHAR2(30)으로 변경
ALTER TABLE EX_ALTER MODIFY COL2 VARCHAR2(30) ;
2. 데이터가 있는 컬럼 타입 변경
새 컬럼 생성 - 새 컬럼에 기존 데이터 입력 - 기존 컬럼 삭제 - 새 컬럼 이름을 기존 컬럼 이름으로 변경
: 위의 순서에 따라 변경하면 됨.
예시) 앞의 게시물에서 생성한 EX_ALTER테이블의 COL4 컬럼에 데이터가 있다고 가정한 후,
COL4 컬럼의 데이터 타입을 VARCHAR2(10)에서 NUMBER로 변경할 것
(1) 새 컬럼 생성
ALTER TABLE EX_ALTER ADD COL4_NEW NUMBER ;
↓
(2) 새 컬럼에 기존 데이터 입력
UPDATE EX_ALTER SET COL4_NEW = COL4 ;
↓
(3) 기존 컬럼 삭제
ALTER TABLE EX_ALTER DROP COLUMN COL4 ;
↓
(4) 새 컬럼 이름을 기존 컬럼 이름으로 변경
ALTER TABLE EX_ALTER RENAME COLUMN COL4_NEW TO COL4 ;
이상 SQL 테이블 수정과정(2)이었습니다 ♪(´▽`)
'프로그램 > SQL' 카테고리의 다른 글
#SQL_SELECT 데이터 조회, INSERT 데이터 입력 (0) | 2023.04.27 |
---|---|
#SQL_DROP TABLE 테이블 삭제하기 (0) | 2023.04.14 |
#SQL_ALTER TABLE 테이블 수정하기(1) (0) | 2023.04.13 |
#SQL_CREATE TABLE 테이블 생성하기 (0) | 2023.04.12 |
#SQL1 시작하기 (0) | 2023.03.30 |