MariaDB / DATA / 데이터 추가(INSERT), 수정(UPDATE), 삭제(DELETE)
데이터베이스와 테이블 만들기
test 데이터베이스를 만듭니다.
MariaDB [(none)]> create database test; Query OK, 1 row affected (0.00 sec)
test 데이터베이스를 사용합니다.
MariaDB [(none)]> use test; Database changed
table_1 테이블을 만듭니다.
MariaDB [test]> CREATE TABLE table_1 ( -> column_1 varchar(100), -> column_2 varchar(100), -> column_3 varchar(100) -> ); Query OK, 0 rows affected (0.03 sec)
MariaDB [test]> DESC table_1; +----------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +----------+--------------+------+-----+---------+-------+ | column_1 | varchar(100) | YES | | NULL | | | column_2 | varchar(100) | YES | | NULL | | | column_3 | varchar(100) | YES | | NULL | | +----------+--------------+------+-----+---------+-------+ 3 rows in set (0.00 sec)
데이터 추가 - INSERT
데이터를 추가하는 명령어는 INSERT입니다. 모든 컬럼에 값을 넣을 때는 다음과 같이 합니다.
MariaDB [test]> INSERT INTO table_1 VALUES ( 'a', 'aa', 'aaa' ); Query OK, 1 row affected (0.01 sec)
MariaDB [test]> SELECT * FROM table_1; +----------+----------+----------+ | column_1 | column_2 | column_3 | +----------+----------+----------+ | a | aa | aaa | +----------+----------+----------+ 1 row in set (0.00 sec)
일부 컬럼에만 값을 넣을 때는 다음과 같이 합니다.
MariaDB [test]> INSERT INTO table_1 ( column_1, column_2 ) VALUES ( 'b', 'bb' ); Query OK, 1 row affected (0.01 sec)
MariaDB [test]> SELECT * FROM table_1; +----------+----------+----------+ | column_1 | column_2 | column_3 | +----------+----------+----------+ | a | aa | aaa | | b | bb | NULL | +----------+----------+----------+ 2 rows in set (0.00 sec)
데이터 수정 - UPDATE
데이터를 수정하는 명령어는 UPDATE입니다. 모든 데이터의 특정 컬럼 값을 변경하고 싶다면 다음과 같이 합니다.
MariaDB [test]> UPDATE table_1 SET column_1 = 'z'; Query OK, 2 rows affected (0.01 sec) Rows matched: 2 Changed: 2 Warnings: 0
MariaDB [test]> SELECT * FROM table_1; +----------+----------+----------+ | column_1 | column_2 | column_3 | +----------+----------+----------+ | z | aa | aaa | | z | bb | NULL | +----------+----------+----------+ 2 rows in set (0.00 sec)
특정 데이터의 값을 변경하고 싶다면 WHERE를 사용합니다.
MariaDB [test]> UPDATE table_1 SET column_1 = 'x' WHERE column_2 = 'aa'; Query OK, 1 row affected (0.01 sec) Rows matched: 1 Changed: 1 Warnings: 0
MariaDB [test]> SELECT * FROM table_1; +----------+----------+----------+ | column_1 | column_2 | column_3 | +----------+----------+----------+ | x | aa | aaa | | z | bb | NULL | +----------+----------+----------+ 2 rows in set (0.00 sec)
여러 개의 컬럼 값을 변경하고 싶다면 쉼표를 사용합니다.
MariaDB [test]> UPDATE table_1 SET column_1 = 'y', column_2 = 'yy' WHERE column_3 = 'aaa'; Query OK, 1 row affected (0.01 sec) Rows matched: 1 Changed: 1 Warnings: 0
MariaDB [test]> SELECT * FROM table_1; +----------+----------+----------+ | column_1 | column_2 | column_3 | +----------+----------+----------+ | y | yy | aaa | | z | bb | NULL | +----------+----------+----------+ 2 rows in set (0.01 sec)
데이터 삭제 - DELETE
데이터를 삭제하는 명령어는 DELETE입니다. 특정 데이터를 삭제하려면 WHERE를 사용합니다.
MariaDB [test]> DELETE FROM table_1 WHERE column_1 = 'y'; Query OK, 1 row affected (0.00 sec)
MariaDB [test]> SELECT * FROM table_1; +----------+----------+----------+ | column_1 | column_2 | column_3 | +----------+----------+----------+ | z | bb | NULL | +----------+----------+----------+ 1 row in set (0.00 sec)
WHERE가 없이 DELETE를 사용하면 모든 데이터를 삭제합니다.
MariaDB [test]> DELETE FROM table_1; Query OK, 1 row affected (0.01 sec)