[PHP] MySQL 테이블 필드 추가하기 alter table add

2022. 9. 30. 22:19Program/PHP

108_PHP MySQL 테이블 필드 추가하기

[요약]

  • 이미 생성한 테이블에 필드를 추가하는 명령문 ALTER TABLE ADD 에 대해 알아보자

어떠한 테이블을 생성하고 추후에 같은 테이블에 필드를 더 추가해야 하는 경우가 간혹 발생한다.

필드에 관련한 명령문은 ALTER 문이다.


[테이블에 필드를 추가하는 방법]

ALTER TABLE 테이블명 ADD 추가할 필드명 옵션 코멘트 위치

테이블명에는 필드를 추가할 테이블명을 명시하며 필드를 추가하는 것이므로 ADD를 작성한다.

그리고 테이블 생성시와 같이 필드의 정보를 적는다.

위치는 어떠한 필드 뒤에 위치할 것인지 의미하며 해당하는 필드명을 작성한다.

작성하지 않으면 가장 마지막에 위치한다.

 

myMember 테이블에 현재 나이 정보를 입력하는 필드를 추가해보자.

추가할 필드의 정보는 다음과 같다.

필드명 currentAge
데이터형 int
옵션 unsigned
코멘트 '현재 나이'
위치 gender 필드 다음에 위치

위의 정보로 currentAge 필드를 추가하는 쿼리문을 만들면 다음과 같다.

ALTER TABLE myMember ADD currentAge int unsigned COMMENT '현재나이' AFTER gender

AFTER gender는 gender 필드의 다음에 위치신다는 의미이다.

 

다음은 currentAge 필드를 myMember 테이블에 추가하는 예제이다.

[예제: 111_alterAdd.php ]

<?php
    include $_SERVER['DOCUMENT_ROOT'].'/php/108-2_connectDB.php';

    // 마지막에 띄어쓰기가 있습니다.
    $sql = "ALTER TABLE myMember ADD currentAge ";
    $sql .= "int unsigned COMMENT '현재 나이' AFTER gender";
    $result = $dbConnect->query($sql);

    if($result) {
      echo "필드 추가 완료";
    } else {
      echo "필드 추가 실패";
    }
?>

실행결과

[코드 111]에서 사용한 쿼리문을 터미널이나 phpMyAdmin 프로그램에서 사용하면 필드가 추가되었는지 바로 확인이 가능하다.

터미널에서 확인할 때는 DESC 명령문을 사용하면 테이블의 필드값 구조를 확인할 수 있다.

 

[DESC 명령문 사용 방법]

DESC 테이블명;

위의 테이블 검색 결과를 보면 currentAge 필드가 추가되었을을 확인할 수 있다.

 

 

 


 

 

 

초보자를 위한 PHP 200제
김태영 지음 | 정보문화사