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)

Related Posts

MariaDB / 함수 / LENGTH, BIT_LENGTH, CHAR_LENGTH / 문자열 길이 출력하는 함수

MariaDB / 함수 / LENGTH, BIT_LENGTH, CHAR_LENGTH / 문자열 길이 출력하는 함수

LENGTH LENGTH는 바이트(byte)로 계산된 문자열의 길이를 출력합니다. 영어. 숫자, 특수문자 등은 1로, 한글은 3으로 계산합니다. SELECT LENGTH( 'A1#가' ); +--------------------+ | LENGTH( 'A1#가' ) | +--------------------+ | 6 | +--------------------+ BIT_LENGTH BIT_LENGTH는 비트(bit)로 계산된 문자열의 길이를 출력합니다. 영어, 숫자, 특수문자 등은 ...

MariaDB / DBeaver / 기본 키(PRIMARY KEY) 만들기, 삭제하기

MariaDB / DBeaver / 기본 키(PRIMARY KEY) 만들기, 삭제하기

기본 키 만들기 기본 키를 만들 테이블을 더블 클릭합니다. Properties 탭에서 를 클릭합니다. 마우스 우클릭하여 를 클릭하거나, 아래쪽에 있는 아이콘을 클릭합니다. 기본 키로 만들 열을 선택하고 를 클릭합니다. 를 클릭하고... 를 클릭하면... 기본 키 설정이 완료됩니다. 기본 키 삭제하기 기본 키를 선택하고 마우스 우클릭한 후 를 클릭하거나, 아래쪽에 있는 휴지통 아이콘을 클릭하고... 를 클릭한 후... 를 클릭하면 기본 키가 ...

MariaDB / 함수 / ELT / 특정 위치의 문자열 출력하는 함수

MariaDB / 함수 / ELT / 특정 위치의 문자열 출력하는 함수

ELT는 특정 위치의 문자열을 출력하는 함수입니다. ELT( N, string1, string2, string3, ... ) A, B, C, D에서 2번째의 문자열인 B를 출력합니다. SELECT ELT( 2, 'A', 'B', 'C', 'D' ); +------------------------------+ | ELT( 2, 'A', 'B', 'C', 'D' ) | +------------------------------+ | B ...

MariaDB / 샘플 데이터베이스 employees 설치하기

MariaDB / 샘플 데이터베이스 employees 설치하기

데이터베이스를 다루는 공부를 할 때 데이터가 들어있는 데이터베이스가 있으면 좋습니다. 직접 만드는 방법도 있지만, 공개된 샘플 데이터베이스를 이용해도 됩니다. 제가 주로 사용하는 것은 test_db입니다. 앞으로의 강좌에서 데이터가 필요한 경우 test_db를 사용할 것입니다. 다음은 MariaDB에 설치하는 방법입니다. GitHub에 있는 test_db 페이지에 접속합니다. Clone or download를 클릭한 다음 다운로드합니다. 서버에 업로드한 다음 압축을 풉니다. employees.sql가 있는 폴더에서 ...

MariaDB / Query / IN, NOT IN

MariaDB / Query / IN, NOT IN

예제로 사용한 데이터베이스는 employees입니다. IN 예를 들어 first_name이 Georgi 또는 Parto인 직원의 목록을 추출하고 싶다면 다음과 같이 쿼리할 수 있습니다. SELECT first_name, last_name FROM employees WHERE first_name = 'Georgi' OR first_name = 'Parto' LIMIT 10; 하지만, 골라내야 하는 first_name이 더 많아진다면 쿼리가 길어집니다. 그런 경우 IN을 사용하면 쿼리를 단순하게 만들 수 있습니다. SELECT first_name, last_name FROM ...

MariaDB / DATA / CSV 파일 데이터 가져오는 방법

MariaDB / DATA / CSV 파일 데이터 가져오는 방법

LOAD DATA INFILE MariaDB의 LOAD DATA INFILE로 텍스트 파일의 데이터를 가져올 수 있습니다. 문법은 다음과 같습니다. LOAD DATA INFILE 'file_name' INTO TABLE tbl_name [{FIELDS | COLUMNS} ...

MariaDB / 함수 / INSERT / 일정 구간 문자열 교체하는 함수

MariaDB / 함수 / INSERT / 일정 구간 문자열 교체하는 함수

INSERT는 일정 구간의 문자열을 다른 문자열로 교체하는 함수입니다. INSERT( string, position, length, new-string ) string : 원본 문자열입니다. position : 구간이 시작하는 위치입니다. length : 구간의 길이입니다. new-string : 교체될 문자열입니다. 예를 들어 다음과 같은 경우, 1234567에서 4번째 문자부터 2개를 지우고 ABC를 넣습니다. 즉, 45를 지우고 ABC를 넣습니다. MariaDB > SELECT INSERT( '1234567', 4, 2, 'ABC' ...

MariaDB / 사용자 만들기, 사용자 삭제하기, 권한 부여하기, 권한 제거하기

MariaDB / 사용자 만들기, 사용자 삭제하기, 권한 부여하기, 권한 제거하기

사용자 만들기 사용자 이름 jb, 내부에서만 접속 가능, 비밀번호 1234 MariaDB > create user 'jb'@'localhost' identified by '1234'; Query OK, 0 rows affected (0.00 sec) 사용자 이름 jb, 어디에서나 접속 가능, 비밀번호 1234 MariaDB > create user 'jb'@'%' identified by '1234'; Query OK, 0 rows affected (0.00 sec) 사용자 목록 보기 mysql 데이터베이스 사용 MariaDB > use mysql; Host, User ...

MariaDB / Query / LEFT JOIN, RIGHT JOIN, INNER JOIN

MariaDB / Query / LEFT JOIN, RIGHT JOIN, INNER JOIN

JOIN SQL의 JOIN은 여러 테이블을 한 번에 나타낼 때 사용합니다. 대표적인 JOIN 방식은 LEFT JOIN, RIGHT JOIN, INNER JOIN이 있습니다. 다음은 세 가지 JOIN의 차이를 알아보기 위한 간단한 예제 테이블입니다. A 테이블에는 나라, B 테이블에는 도시가 있습니다. 도시가 어떤 나라의 도시인지는 a_no로 확인합니다. 나라는 있는데 도시가 없는 것도 있고, 나라는 없는데 도시는 있는 것도 있습니다. A ...

MariaDB / 연산자 / AND, OR, IN

MariaDB / 연산자 / AND, OR, IN

예제로 사용한 데이터베이스는 employees입니다. AND 여러 조건을 동시에 만족시키는 데이터를 추출할 때 AND 연산자를 사용합니다. employees 테이블에서 first_name이 George이고, gender가 M인 데이터를 가져옵니다. MariaDB > SELECT first_name, gender -> FROM employees -> WHERE -> first_name = "George" -> AND ...