[포스코x코딩온] 스마트팩토리 입문과정 | 데이터베이스 | MySQL - DML(Data Manipulation Language)

김영웅·2023년 3월 17일
0
post-thumbnail

DML(Data Manipulation Language)은 데이터베이스에서 데이터를 조작하는 데 사용되는 언어입니다. DML에는 INSERT, SELECT, UPDATE, DELETE 네 가지 명령어가 있으며, 각각 데이터베이스에서 레코드를 추가, 조회, 수정, 삭제하는 데 사용됩니다. 이번 시간에는 저번에 배운 SELECT를 제외한 나머지 세 가지 명령어에 대해 알아보는 시간을 가져보았습니다.


DML은 데이터베이스에서 가장 기본적이고 중요한 기능입니다.
DML의 네 가지 명령어를 사용하면 대부분의 컴퓨터 소프트웨어가 가지는 기본적인 처리 기능인 CRUD(Create, Read, Update, Delete) 기능을 수행할 수 있습니다. 데이터베이스에서 CRUD 기능은 데이터를 효율적으로 관리하기 위해 매우 중요하다 생각합니다.

[CRUD]

• Create (생성) - INSERT
• Read (읽기) - SELECT
• Update (갱신) - UPDATE
• Delete (삭제) - DELETE

[INSERT]

테이블에 새로운 투플을 추가합니다.

-- < INSERT(예시) >
-- 1) 긴 명령어 버전
INSERT INTO [테이블명] ([속성1], [속성2], [속성3], [속성4], [속성5])
    VALUES ('값1', '값2', '값3', '값4', '값5');
-- 값을 넣어줄때 데이터 유형이 INT일 경우 ' ' 따옴표를 안써주어도 됩니다.
-- 단, 공백이 들어갈 경우 무조건 사용해주어야 합니다.

-- 속성 입력 순서를 바꿔줄 수 있습니다.
-- 단, 속성값 순서가 차례대로 대응되어야 합니다.
INSERT INTO [테이블명] ([속성5], [속성3], [속성1], [속성2], [속성4])
    VALUES ('값5', '값3', '값1', '값2', '값4');
    
-- 2) 짧은 명령어 버전
INSERT INTO [테이블명] VALUES ('값5', '값3', '값1', '값2', '값4');

-- 여러 정보를 동시에 추가하고 싶으면 INSERT 문을 여러번 작성하면 되겠지만 하나의 문에 여러정보를 한번에 입력해 줄 수 있습니다.
INSERT INTO [테이블명] VALUES 
    ('값1.0', '값2.0', '값3.0', '값4.0', '값5.0'),
    ('값1.1', '값2.1', '값3.1', '값4.1', '값5.1'),
    ('값1.2', '값2.2', '값3.2', '값4.2', '값5.2');

[UPDATE]

테이블에서 특정 속성 값 수정합니다.

UPDATE [테이블명] SET [업데이트 하고 싶은 속성] = [업데이트 하고 싶은 값] WHERE [PK속성] = [업데이트 하고 싶은 속성값의 행에 있는 PK속성값];

[Error Code: 1175.]


다음과 같은 에러코드가 뜨면서 safe update 설정이 되어있어서 업데이트가 막혀있는 경우입니다.
이경우 아래의 코드를 사용하여 임시로 기능을 해제해 준 뒤 다시 실행해 주시면 됩니다.

SET sql_safe_updates = 0;

[DELETE]

테이블의 기존 투플을 삭제합니다.

DELETE FROM [테이블명] WHERE [PK속성명] = [삭제하고 싶은 투플의 PK값];

이번 시간에 DML을 배우면서 데이터베이스에서 데이터를 다루는 기본적인 방법들을 익힐 수 있었습니다. 데이터를 추가하거나 수정하거나 삭제하거나 조회하는 CRUD(CREATE, READ, UPDATE, DELETE)라는 개념은 데이터베이스에서 매우 중요한 작업이라 생각합니다. 이 개념을 이해하면서 데이터베이스에서 필요한 작업들을 보다 쉽게 수행할 수 있게 된 것 같습니다.

0개의 댓글