MySQL
MySQL은 데이터베이스 소프트웨어입니다. 일반적으로 데이터를 추가하거나 검색, 추출하는 기능을 모두 포함해서 데이터베이스라고 부르며,
세계에서 가장 많이 쓰는 오픈 소스 관계형 데이터베이스 관리시스템(RDBMS)입니다.
MySQL은 PHP 스크립트 언어와 상호 연동이 잘 되면서 오픈소스를 개발된 무료 프로그램입니다.
그래서 홈페이지나 쇼핑몰(워드프레스, cafe24, 제로보드, 그누보드)등 일반적으로 웹 개발에 널리 사용하고 있습니다.
이번 시간에는 MySQL에 쓰이는 몇 가지의 데이터 베이스를 알아보겠습니다.
첫 번째. 데이터베이스
데이터베이스 만들기
create database 데이터베이스 이름;
mysql> create database sample01;
Query OK, 1 row affected (0.00 sec)
데이터베이스 보기
show databases;
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sample01 |
| sys |
+--------------------+
6 rows in set (0.00 sec)
데이터베이스 사용
use 데이터베이스 이름;
use sample01;
Database changed
데이터베이스 삭제
drop database 데이터베이스 이름;
mysql> drop database sample02;
Query OK, 0 rows affected (0.04 sec)
두 번째. 테이블
테이블 만들기
create table 테이블 이름
create table member (
myMemberID int(10) unsigned auto_increment,
youEmail varchar(40) NOT NULL,
youName varchar(20) NOT NULL,
youPass varchar(20) NOT NULL,
youBirth int(20) NOT NULL,
regTime int(20) NOT NULL,
PRIMARY KEY (myMemberID)
) charset=utf8;
테이블 전체보기
show tables;
mysql> show tables;
+--------------------+
| Tables_in_sample01 |
+--------------------+
| member |
+--------------------+
1 row in set (0.00 sec)
테이블 보기
desc 테이블 이름;
mysql> desc member;
+------------+------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+------------------+------+-----+---------+----------------+
| myMemberID | int(10) unsigned | NO | PRI | NULL | auto_increment |
| youEmail | varchar(40) | NO | | NULL | |
| youName | varchar(20) | NO | | NULL | |
| youPass | varchar(20) | NO | | NULL | |
| youBirth | int(20) | NO | | NULL | |
| regTime | int(20) | NO | | NULL | |
+------------+------------------+------+-----+---------+----------------+
6 rows in set (0.01 sec)
테이블 삭제
drop table 테이블 이름;
mysql> drop table member;
Query OK, 0 rows affected (0.03 sec)
세 번째. 테이블 데이터
데이터 입력하기
INSERT INTO 테이블 이름(필드명) VALUE(데이터);
INSERT INTO member(youEmail, youName, youPass, youBirth, regTime) VALUES('webstoryboy@naver.com', '황상연', '1234', '19990303', '1234567');
데이터 불러오기
전체 불러오기
SELECT 필드명 FROM 테이블명 WHERE 조건;
mysql> SELECT * FROM member;
+------------+--------------------------+---------+---------+----------+---------+
| myMemberID | youEmail | youName | youPass | youBirth | regTime |
+------------+--------------------------+---------+---------+----------+---------+
| 1 | webstoryboy@naver.com | 황상연 | 1234 | 19990303 | 1234567 |
| 2 | thdtjdgml415@naver.com | 송성희 | 1234 | 19970415 | 1234567 |
| 3 | mo0647@naver.com | 김민정 | 1234 | 19970530 | 1234567 |
+------------+--------------------------+---------+---------+----------+---------+
19 rows in set (0.00 sec)
myMemberID가 3번인 경우
mysql> SELECT * FROM member WHERE myMemberID = 3;
+------------+-------------------+---------+---------+----------+---------+
| myMemberID | youEmail | youName | youPass | youBirth | regTime |
+------------+-------------------+---------+---------+----------+---------+
| 3 | mo0647@naver.com | 김민정 | 1234 | 19970530 | 1234567 |
+------------+-------------------+---------+---------+----------+---------+
1 row in set (0.01 sec)
email중에 naver 텍스트를 포함하고 있는 경우
mysql> SELECT * FROM member WHERE youEmail LIKE '%naver%';
+------------+------------------------+---------+---------+----------+---------+
| myMemberID | youEmail | youName | youPass | youBirth | regTime |
+------------+------------------------+---------+---------+----------+---------+
| 2 | webstoryboy@naver.com | 황상연 | 1234 | 19990303 | 1234567 |
| 3 | thdtjdgml415@naver.com | 송성희 | 1234 | 19970415 | 1234567 |
| 4 | mo0647@naver.com | 김민정 | 1234 | 19970530 | 1234567 |
+------------+------------------------+---------+---------+----------+---------+
11 rows in set (0.00 sec)
댓글