3일차 스터디 ‘데이터베이스의 생성과 제어’
PHP & MySQL
14.01.15
1. 테이블?
데이터베이스는 여러 개의 데이터 저장소로 나눠지는데 이를 테이블이라 지칭
칼럼(열)과 데이터의 로우(행)를 사용해 격자 형태로 데이터 저장
CREATE DATABASE → CREATE TABLE 가능 (SQL 터미널을 이용할 때는 세미콜론(;)을 항상 추가)
첫 번째로 어떤 종류의 데이터를 저장할지 구상해야함
|
First_name |
Last_name |
|
|
Ayeon |
Hwang |
1@1 |
|
Jeong |
Seo |
2@2 |
|
… | ||
위의 표에 따라서, 3개의 칼럼(열)이 있는 것을 알 수 있음
테이블 각각의 칼럼에 어떤 종류의 데이터를 저장할 것인지, 테이블 생성시 알려 주어야 함
|
데이터 타입 |
데이터 |
|
INT |
숫자 |
|
CHAR(1) |
문자의 길이가 고정적 일 때 |
|
DATE |
날짜 |
|
TIME |
시간 |
|
DEC(4,2) |
실수 (48.99) |
|
VARCHAR(60) |
저장해야 할 문자열의 길이가 유동적일 때 |
|
CHAR(2) |
2개의 문자로 구성된 문자 |
|
DATETIME |
날짜와 시간 |
VARCHAR(2)와 같은 경우에는 CHAR(2)를 쓰는 것이 더 효율적
DEC(1,2) 2개의 숫자 중 첫 번째는 소수점 앞에 나올 수 있는 수의 자릿수, 두 번째는 소수점 뒤에 나올 수 있는 수의 자릿수이다.
CREATE TABLE bment #테이블을 생성하기 위한 SQL 명령어는 대문자
( #테이블명은 소문자로 사용
first_name VARCHAR(20), #각각의 칼럼은 쉼표(,)로 구분
last_name VARCHAR(20),
email VARCHAR(60)
);
예시
1) DESCRIBE 구문
DESCRIBE 테이블명
→ DESCRIBE 구문은 테이블의 구조만 보여 줄 뿐, 실제 데이터를 보여주지 않음
2) 테이블을 삭제하는 DROP 구문
DROP 테이블명
→ 테이블과 테이블에 저장되어 있던 모든 데이터를 삭제
2. PHP 스크립트
$_POST는 폼에 입력된 데이터를 배열 형태로 저장하는 것
INSERT 구문은 2일차 스터디 참고.
3. 이메일 전송 PHP 스크립트
$from – 이메일 주소를 변수에 지정
$subject, $text – 이메일 메시지 폼도 변수에 지정
$result – 쿼리가 실행되면 결과를 얻어 낼 수 있다.
$row – 쿼리의 결과 중 첫 번째 데이터 로우를 담는 배열 (즉, 세 번을 호출하면 3개의 데이터 로우를 얻어 저장함)
1) WHILE 반복문
While ($row …)
→ 예를 들어 $row 같은 경우 매번 호출하기 힘들 기 때문에 WHILE 반복문으로 코드를 줄일 수 있음 (python에서의 while 루프)
3. 삭제기능
DELETE FROM 테이블명
→ 조건 절이 없다면 테이블의 모든 데이터를 삭제함
1) WHERE 절이 추가된 DELETE 구문
DELETE FROM 테이블명
WHERE 칼럼명 = ‘칼럼에 저장되어 있는 값과 비교할 문자열’
→ 전체 테이블을 대상으로 전달된 값을 비교하여 해당 데이터 로우 삭제
'데이터베이스 > MYsql' 카테고리의 다른 글
| PHP&MySQL 5일차 스터디 (0) | 2014.02.14 |
|---|---|
| PHP&MySQL 4일차 스터디 (0) | 2014.02.14 |
| PHP&MySQL 2일차 스터디 (0) | 2014.02.14 |
| PHP&MySQL 1일차 스터디 (0) | 2014.02.14 |
| mysql 각종 오류들 (0) | 2011.03.08 |