ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [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
Designed by Tistory.