MySQL - CRUD (1) Create

Younkyum J·2022년 7월 21일
0

TIL

목록 보기
4/10
post-thumbnail

CRUD

CRUD는 데이터 처리에 있어 가장 기본적인 요소들의 앞글자를 따온 것이다.

C : Create 데이터의 생성
U : Update 데이터의 수정 및 재생성
D : Delete 데이터의 삭제
R : Read 데이터 읽기

하지만 CRUD를 사용하기 이전에, 우선 필요한 것들을 알아보자.




DATABASE

CRUD를 공부하기에 앞서, 기본적인 MySQL (여기서는 동일한 MariaDB를 사용)을 실행시킨 후 진행하는 것에 대해 알아보자.

MySQL을 실행하면 다음과 같은 화면이 뜬다.

MariaDB [(none)]> 

Database 확인

그럼 우선, 어떤 Database가 있는지 확인해야 한다.

MariaDB [(none)]> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| opentutorials      |
| performance_schema |
| test               |
+--------------------+
MariaDB [(none)]>

SHOW DATABASES; 를 통해 존재하는 Database를 확인한다.

SHOW DATABASES;

이후에도 SHOW (SOMETHING) 구문은 어떤 구조를 보고 싶을 때 사용할 수 있다.

Database 진입 및 구성요소 확인

진입을 하기 위해서는 우선 어떤 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를 해볼 차례이다.



Create | Insert

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' 강의를 기반으로 작성되었습니다.

profile
기획자입니다. 근데 이제 고양이와 애플덕후와 개발을 곁들인.

0개의 댓글