MySQL

MySQL

코빈_ 2022. 9. 14. 22:31

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)