PHP/게시판 만들기

데이터베이스 생성하기

ethanjoh 2008. 11. 10. 23:13

울랄라...아주 아주 기초적인 게시판을 만들기 위해 데이터베이스를 생성한다.
여러 가지 번거로운 점을 피하기 위해 하나의 파일을 실행하면 데이터베이스가 실행되도록 한다.

나중에 어떤 프로그램을 짜든 반복해서 수정, 사용할 수 있으므로 save~


<?
$con = mysql_connect("localhost","root","");

if (!$con)
  {
  die('연결할 수가 없습니다: ' . mysql_error());
  }

if (mysql_query("CREATE DATABASE bbs",$con))
  {
  echo "데이터베이스를 생성했습니다.";
  }
else
  {
  echo "데이터베이스 생성 중 에러가 발생했습니다: " . mysql_error();
  }

  // Create table
mysql_select_db("bbs", $con);

$sql = "CREATE TABLE board
(
main_no int(11) NOT NULL,
title varchar(30) NOT NULL,
name varchar(20),
content mediumtext,
passwd varchar(20),

PRIMARY KEY (main_no)
)";

// Execute query

if (mysql_query($sql,$con))
  {
  echo "board 테이블을 생성했습니다.";
  }
else
  {
  echo "board 테이블을 생성 중 에러가 발생했습니다: " . mysql_error();
  }

mysql_close($con);

?>

 

main_no : 게시판 글 번호
title : 글 제목
name : 작성자
content : 내용
passwd : 비밀번호

primary key는 main_no로 잡았다.

 

이 시점에서 테이블 만들 때 들어간 변수형들이 궁금해진다.
varchar는 char과는 달리 입력되는 문자크기에 따라 용량이 바뀐다. (3바이트가 될 수도 10바이트가 될 수도 있다.)
하지만, char는 두 글자가 들어가든 열 글자가 들어가든 차지하는 용량은 변하지 않으므로 DB의 용량효율면에서는 가변적인 varchar가 낫지만, 자릿수가 정해져 있는 주민등록번호 등을 입력받을 때는 char를 쓰는게 좋다고...

어쨌거나, 기본적인 동작사항을 이해하기 위해 만든 것이므로 날짜 등도 다 빼버린 슬림한 구조다. -_-; (나중에 추가한다.)