CRUD는 데이터 처리에 있어 가장 기본적인 요소들의 앞글자를 따온 것이다.
C : Create 데이터의 생성
U : Update 데이터의 수정 및 재생성
D : Delete 데이터의 삭제
R : Read 데이터 읽기
하지만 CRUD를 사용하기 이전에, 우선 필요한 것들을 알아보자.
CRUD를 공부하기에 앞서, 기본적인 MySQL (여기서는 동일한 MariaDB를 사용)을 실행시킨 후 진행하는 것에 대해 알아보자.
MySQL을 실행하면 다음과 같은 화면이 뜬다.
MariaDB [(none)]>
그럼 우선, 어떤 Database가 있는지 확인해야 한다.
MariaDB [(none)]> SHOW DATABASES;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| opentutorials |
| performance_schema |
| test |
+--------------------+
MariaDB [(none)]>
SHOW DATABASES; 를 통해 존재하는 Database를 확인한다.
SHOW DATABASES;
이후에도 SHOW (SOMETHING) 구문은 어떤 구조를 보고 싶을 때 사용할 수 있다.
진입을 하기 위해서는 우선 어떤 Database를 사용할지(USE) 정하면 된다.
만약 위에서 opentutorials Database에 진입하기 위해서는 다음과 같이 하면 된다.
MariaDB [(none)]> USE opentutorials
Database changed
또한, 진입 한 후 다시 SHOW를 통해서 구조를 확인하면,
MariaDB [opentutorials]> SHOW TABLES;
+-------------------------+
| Tables_in_opentutorials |
+-------------------------+
| topic |
+-------------------------+
미리 만들어둔 topic table이 있는 것을 확인 할 수 있다.
그럼 이제 table에서 각 항목들을 확인해보자.
MariaDB [opentutorials]> DESC topic;
+-------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+--------------+------+-----+---------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| title | varchar(100) | NO | | NULL | |
| description | text | YES | | NULL | |
| created | varchar(30) | NO | | NULL | |
| author | varchar(30) | YES | | NULL | |
| profile | varchar(100) | YES | | NULL | |
+-------------+--------------+------+-----+---------+----------------+
6 rows in set (0.015 sec)
Table의 각 요소들을 설명(DESC) 하도록 구문을 작성하면 다음과 같이 Field, Type 등을 얻을 수 있다.
이때, id의 Extra 항목의 auto_increment를 확인할 수 있다.
이는 따로 선언해주지 않더라도 자동으로 숫자가 배정되는 항목이라는 의미이다.
auto_increment는 자동으로 숫자 등을 입력해준다.
이제 모든 것을 확인했으니, CRUD의 Create를 해볼 차례이다.
MySQL에서는 항목을 추가할 때 Insert 구문을 사용한다.
{title: "MySQL",
description: "MySQL is ...",
created: (현재시간),
author: "Younkyum",
profile: "developer"}
다음과 같은 값을 집어넣는다고 하면, 다음과 같은 구문을 사용할 수 있다.
이때, id는 auto_increment 인 항목이므로 채우지 않아도 된다.
MariaDB [opentutorials]> INSERT INTO topic (title, description, created, author, profile)
->VALUES('MySQL', 'MySQL is...', NOW(), 'Younkyum', 'developer');
Query OK, 1 row affected (0.027 sec)
이렇게 간단하게 항목을 추가할 수 있다.
조회는 SELECT를 통해 할 수 있는데, 자세한 건 다음 Read 항목에서 알 수 있을 테니 일단 해보도록 하자.
MariaDB [opentutorials]> SELECT * FROM topic;
+----+-------+-------------+---------------------+----------+-----------+
| id | title | description | created | author | profile |
+----+-------+-------------+---------------------+----------+-----------+
| 1 | MySQL | MySQL is... | 2022-07-21 23:03:59 | Younkyum | developer |
+----+-------+-------------+---------------------+----------+-----------+
1 row in set (0.000 sec)
* 본 포스팅은 opentutorials의 'MySQL' 강의를 기반으로 작성되었습니다.