-
[SQL] 테이블 칼럼 다루기_1편SQL 2020. 10. 31. 17:44
1. 테이블 내 칼럼 추가/삭제 하기
(1) 칼럼 추가하기
- 함수명 : ALTER TABLE 테이블명 ADD 칼럼명 데이터타입 속성 ;
<예제>
menu 테이블에 가격(price) 칼럼 추가하기
- price 칼럼 속성 : INT NOT NULL (정수이며, NULL 값을 허용하지 않음)
ALTER TABLE menu ADD price INT NOT NULL ; (2) 칼럼 삭제하기
- 함수명 : ALTER TABLE 테이블명 DROP COLUMN 칼럼명 ;
<예제>
menu 테이블에서 출시일(release_date) 칼럼 삭제하기
ALTER TABLE menu DROP COLUMN release_date ; 2. 칼럼 데이터 타입 변경하기
- 함수명 : ALTER TABLE 테이블명 MODIFY 칼럼명 데이터 타입 ;
<예제>
menu 테이블에서 메뉴명(menu_title) 을 문자열에서 가변문자열로 수정
ALTER TABLE menu MODIFY menu_title VARCHAR(20) ; <주의>
* 가변문자열(VARCHAR) 로 되어 있는 칼럼을 INT(정수) 로 바꾸게 되면, 실행 오류가 발생할 수 있습니다. 이유는 기존 테이블 row 가 가변문자열(VARCAHR) 양식으로 되어 있었기 때문에, 정수(INT) 값으로 대치가 불가능한 row 가 존재할 수 있기 때문입니다.
* 위와 같은 이유로 데이터 타입 변경이 불가능한 경우에는 UPDATE 함수를 통해 칼럼 내 row 값을 정수(INT) 값으로 갱신/수정 해줘야 합니다. (하단 3. 칼럼 값 갱신/수정하기 참고)
3. 칼럼 값 갱신/수정하기
- 함수명 : UPDATE 테이블명 SET 칼럼명 = 값 WHERE 갱신하려는 칼럼 조건 ;
<예제>
menu 테이블에서 주방장 이름(chef_name) 을 문자열에서 정수 값으로 수정
UPDATE menu SET chef_name = 01 WHERE chef_name = '최현식' ;
UPDATE menu SET chef_naem = 02 WHERE chef_name = '강미리' ;<코드해석>
* 주방장 이름(chef_name) 칼럼의 데이터 타입을 가변문자열(VARCHAR) 에서 숫자 코드인 정수(INT) 로 변경하고자 하지만, 문자 값이 포함되어 있어 정수로 바로 변경할 수 없는 상황입니다.* 이때, 주방장 이름(chef_name) 칼럼 값을 숫자 코드로 갱신/수정하기 위해 UPDATE 함수를 통해 값을 01, 02 와 같은 숫자로 변경해주는 것입니다.
* WHERE 절의 역할은 각각의 주방장 이름(chef_name) 에 맞는 숫자 코드를 부여하기 위해 작성하는 조건절로써, 생략할 경우 모든 row 의 값이 갱신/수정되기 때문에 꼭 입력해주어야 합니다.
'SQL' 카테고리의 다른 글
[SQL] 데이터 칼럼 다루기_2편 (0) 2020.10.31