본문 바로가기
PHP/게시판 만들기

테이블 구조 변경하기

by ethanjoh 2008. 11. 12.

일단 글을 쓰고, DB에 넣고, 다시 DB에서 불러오고...등등 기초적인 것은 해봤지만
만들어놓고 보니 참 허접하다...

글쓴 날짜도 없고, 몇 명이나 읽었는지도 알 수 없다.
그리고 작성자의 이메일 주소도 쓸 수 있게 하고 싶다. (나중에 이메일로도 내용을 보낼 수 있게...)

그럴려면 테이블을 삭제하고 새로 만들거나, 기존의 테이블을 변경해야 한다.
여기선 SQL의 ALTER 명령을 이용해서 바꿔본다.

물론 phpmyadmin 에 접속해서 수정하는 방법도 있다.
하지만 이왕 프로그래밍 공부하는 것이니 티를 내보자.

<alter_table.php>

<?
	include "db_connect.php";

	$sql = "ALTER TABLE board ADD (date datetime, count int(10) default '0',  email  varchar(40))";
        if(mysql_query($sql, $con))
 		echo "테이블이 변경되었습니다.";
       	else
		echo "테이블 변경이 실패했습니다." .mysql_error();

	mysql_close($con);
?>

 

 

날짜(date)와 조회수(count) 그리고 이메일(email) 컬럼을 기존 board 테이블에 추가했다.
그럼 정말로 바뀌었는지도 확인!

$ mysql -uroot -p
mysql> use bbs;
mysql> show table;
+---------------+
| Tables_in_bbs |
+---------------+
| board         |
+---------------+
mysql> describe board;
+---------+-------------+------+-----+---------+-------+
| Field   | Type        | Null | Key | Default | Extra |
+---------+-------------+------+-----+---------+-------+
| main_no | int(11)     | NO   | PRI | NULL    |       |
| title   | varchar(30) | NO   |     | NULL    |       |
| name    | varchar(20) | YES  |     | NULL    |       |
| content | mediumtext  | YES  |     | NULL    |       |
| passwd  | varchar(20) | NO   |     | NULL    |       |
| date    | datetime    | YES  |     | NULL    |       |
| count   | int(10)     | YES  |     | 0       |       |
| email   | varchar(40) | YES  |     | NULL    |       |
+---------+-------------+------+-----+---------+-------+
8 rows in set (0.00 sec)

passwd 컬럼 뒤에 나란히 3개의 컬럼이 추가된 것을 확인할 수 있다.

컬럼을 추가할 때 특정 컬럼의 앞이나 뒤에 추가하는 옵션도 있으나 귀챦아서 패스~
다음은 저 컬럼들을 핸들링할 새로운 코드를 작성하는 일...갈 길은 멀지만 차근차근.






'PHP > 게시판 만들기' 카테고리의 다른 글

글 작성하기 수정  (0) 2008.11.13
게시판 설계 변경  (6) 2008.11.13
글 내용보기 작성  (0) 2008.11.12
글 목록보기 작성  (0) 2008.11.12
글 쓰기 작성  (0) 2008.11.11