강좌
클라우드/리눅스에 관한 강좌입니다.
프로그램 분류

디. php 기초 -3 RDBMS가 뭐지?

작성자 정보

  • 웹관리자 작성
  • 작성일

컨텐츠 정보

본문

[강좌] php+mysql 게시판 만들기 #디-3

안녕하세요. 디망쉬입니다.

드디어 저희 회사 에어컨이 고쳐졌습니다. T^T 아아. 시원합니다.
원인은 가스가 너무 많이 들어가서 모터에 과부하가 생겨 바람이 시원하게 못돌았다고 하내요.
역시 너무 먹이면 안되나봅니다.
사람도 마찬가지고요. :]

icon04.gif 디. 기초 - c. RDBMS (관계형 DBMS) 가 뭐지?

Relational DataBase Management System 의 약자.
단어대로 뜻을 파악해보자면 관계형 데이터베이스 관리 조직/시스팀이군요.
이게 뭔지 아실 건 없습니다.
단지 DBMS 중 RDBMS 라는게 있다는 것만 아시면 됩니다.

그럼 왜 RDBMS 라는 단어를 거론했느냐. 간단합니다.
RDBMS 가 SQL 을 기반으로 하고 있고, 우리가 사용할 것이 바로 SQL 이기 때문입니다.
(SQL 이 RDBMS 를 기반으로 하고 있다고 해야하나 긁적)

데이터베이스가 뭔지는 막연하게나마 아실 겁니다.
자료를 모아놓은 것이 데이터고, 이 데이터를 모은 것 (정렬하건 어쨌건간에)이 데이터베이스겠죠.
이런 데이터베이스에서 자료를 검색할 수도 있고 추가할 수도 있고 삭제할 수도 있을 겁니다.
이런 걸 데이터베이스 관리 시스템이 해주죠.
(DBMS) 이때 DBMS 는 SQL 의 요청을 받고 처리하는 겁니다.

그럼 SQL 은 뭘까요? DBMS 와 대화하는 언어입니다.
컴퓨터와 대화하기 위해서는 프로그래밍 언어(C 등등)가 필요합니다. SQL 이 그런 식이죠.

하지만 SQL 은 프로그래밍 언어가 아닙니다. SQL 을 이용해서 이용을 할 수는 있지만 새로운 것을 '창조'할
수는 없기 때문이라나? 뭐. 별로 중요한 것은 아니겠죠.

SQL 발음. 전 걍 에스큐엘(ess que ell)이라고 발음합니다.
그런데 보통은 시퀄(sequel) 이라고 한다내요.
의사소통에 별 문제 없으므로 편하실대로 부르세요.
그렇다고 SQL 발음을 줄여서 "에스큐" 식으로 마음대로 줄이면 곤란하구요. :]


1. SQL DBMS 종류
}

oracle

네. 이거 지하철의 광고판이나 신문에서 징하게 많이 접하게 되는 언어입니다.
광고에 보면 제일 많이 쓰이고 강력하다고 하더군요. 틀린 말은 아닙니다.
확실히 현재 가장 많이 쓰이고 있고 강력합니다.
게다가 덩치도 크죠. 하지만 개인이 쓰기에는 지나치게 덩치가 큽니다.
애완 및 집 보안용으로 키우기에는 이 짐승은 너무나 크다는거죠. 가격이 꽤 비쌉니다. ^^;

msql

통신망의 이 아이디를 가진 꾸러기 철력님이 계시지요.
그분과 관계가.. 별로 없을 걸요? mini sql 의 약자로 정말 덩치가 매우 작은 sql 서버입니다.
용량이 단지 2메가 정도던가? 매우 최소한의 sql 명령어만 갖고 있고, 심지어는 표준에서도 줄여놨내요.
간단한 게시판 정도 만든다면야 좋겠죠. 물론 무료.

mysql

인기몰이 중인 녀석. 무료인데다가(하지만 msql 같은 라이센스는 아님) 상당히 강력합니다.
개발자가 자존심이 강한 듯 하더군요. 발음은 반드시 '마이 에스큐엘'이라고 하시길.
길가다가 아무 생각없이 '마이 시퀄'이라고 발음했는데 운이 없이 그 자리에 mysql 개발자가 있다면 무슨 일이 생길지 모르죠.
에구. 소개보다 잡담이 많군요.
아무튼 우리가 사용할 것이 이놈입니다.


이외 여러 가지가 있지만 제가 안써본 것들이고 이름도 안떠올라서 생략. :p


b-#. SQL 명령어 6 가지.

게시판이 사용할, 혹은 우리가 기본적으로 알아둬야할 SQL 명령어 몇 가지 알아보도록 하겠습니다.


CREATE

이름에서 풍겨오는 느낌에서도 알 수 있듯이 뭔가를 생성해주는 명령어입니다. 뭘 생성할 수 있느냐.
저의 경우 데이터베이스 생성과 데이터베이스 내에 table 생성할 때 사용합니다. 보통 sql 서버 관리자가
아니라면 데이터베이스 생성하실 일은 적겠죠? :]

CREATE DATABASE dimancheDB;


dimancheDB 라는 이름의 데이터베이스를 생성했습니다.

CREATE TABLE plaza;


plaza 라는 테이블을 만든 겁니다. :]


DROP

날려버리는 명령어입니다. 데이터베이스도 날리고 테이블도 날리고. 주의하실 점은 한 번 날려준 것은,
즉 삭제한 것은 복구가 안된다는 점입니다.
그러니 가급적 주의하며 사용하세요.

DROP TABLE plaza;
DROP DATABASE dimancheDB;


위의 것은 plaza 테이블을 날려준 것이고, 아래의 것은 dimancheDB 를 날려준 것입니다.


SELECT

검색문이라고 보시면 마음 편하실 겁니다. 예제부터 보죠.

SELECT * from plaza;


라고 하면 plaza 테이블의 모든 것을 보여달라는 겁니다.
그런데 필요에 의해서 특정 범위의 것만 보고 싶기도 하겠죠?

SELECT * from plaza WHERE no>=3 AND no <=9;


라고 하면 no 가 3부터 9까지의 데이터를 보여줍니다.
WHERE 문과 AND 문이 눈에 띄이죠? 보통 조건문을 붙일 때는 WHERE 뒤에 붙입니다.
AND 는 연산자죠.
이와 함께 OR 도 있습니다. ^^;

이렇게 말고 특정 부분만 보고 싶을 수도 있습니다.
no, id, name, email, homepage 이렇게 있는데 id 와 name, email 만 보고 싶을 수도 있지요.
아니면 id 만 보고 싶다던가. 그럼 이렇게 하세요.

SELECT id from plaza;
SELECT id,name,email from plaza;


위의 것은 id 만 주루룩 보여주며 아래의 것은 id, name, email 만 주루룩 보여줍니다.

이거 말고도 소트(정렬)도 가능하고 특정 문자가 들어간 것만 찾을 수도 있지요.
이걸 잘 알아야만 게시판에서 검색이 잘 작동하죠.
더 깊이 들어가면 계속 들어가게 되니 일단 제낄께요. :)


INSERT

자료 입력 명령어입니다. 간단하죠.

INSERT into plaza values(no = no + 1,'dimanche',
'dimanche@creple.com','http://creple.com');

이라고 하면 plaza 라는 디렉토리에 values 괄호 안의 내용이 저장됩니다.
잘 이해가 안가신다구요. ^^ 그럼
일단 제끼시라니까여. 여기서 중요한 것은 저장될 내용이 문자열일 경우 반드시 ' ' 로 묶어줘야 합니다.


UPDATE

내용을 고치는 명령어입니다. 새롭게 하라는 의미죠.


UPDATE plaza SET id='manche' WHERE no='1';

이라고 할 경우 plaza 테이블안에서 no 가 1인 데이터 행의 id 내용을 manche 로 고치라는 겁니다.
이건 간단하군요.

DELETE

데이터 행을 삭제하는 명령어입니다. 예제부터 보죠.

DELETE from plaza WHERE no=1;


이라고 할 경우 plaza 테이블 안에서 no 가 1인
데이터 행을 삭제하는 거죠.


자. 이번 회도 끝났습니다. 다음 회에서는 MySQL 용 php 의 SQL 관련 함수들과 최소한으로 알아야 될
팁이나 주의 사항을 알아보겠습니다. 둘다 내용이 약간 적으니 한 번에 올리도록 하죠.

'디-4' 에서 뵙도록 하죠. :]

----------------------------
함께하면 즐거운 사이트들 (-_-; 광고임 -_-;)
http://game.creple.com/delthia
http://creple.com
http://coco.st
----------------------------


- ?! 디망쉬

관련자료

댓글 0
등록된 댓글이 없습니다.

공지사항


뉴스광장


  • 현재 회원수 :  60,043 명
  • 현재 강좌수 :  35,853 개
  • 현재 접속자 :  73 명