hchang   13 Jul 2022

MYSQL 명령어 모음



테이블 삭제 drop {schema $schema_name} | {table $table_name};

기본키 생성 alter table $table_name add primary key (column_name, column_name_2, …);

데이터 입력

INSERT INTO emp_test VALUES (1004, ‘파인먼’, ‘2021-01-10’, 3000);

INSERT INTO emp_test VALUES ROW(1005, ‘퀴리’, ‘2021-03-01’, 4000), ROW(1006, ‘호킹’, ‘2021-03-05’, 5000);

SELECT * FROM emp_test;

위와 같이 하나씩 여러개씩 모두 가능하다.

입력과 수정을 동시에 처리하기

INSERT INTO 테이블명 (칼럼1, 칼럼2, …) VALUES 절(또는 SELECT 문) ON DUPLICATE KEY UPDATE 칼럼 = 값1, 값2, … ;

단일 테이블 데이터 삭제하기

DELETE FROM 테이블 WHERE 조건 ORDER BY … LIMIT … ;

다중 테이블 데이터 삭제하기

DELETE 테이블별칭1, 테이블별칭2, … FROM 테이블1 테이블별칭1, 테이블2 테이블별칭2, … WHERE 조건;

DELETE와 FROM 사이에 기술하는 별칭에 해당되는 테이블만 삭제된다

DELETE FROM 테이블별칭1, 테이블별칭2, … USING 테이블1 테이블별칭1, 테이블2 테이블별칭2, … WHERE 조건;

트랜잭션 처리

MySQL에서는 이런 트랜잭션 처리를 SQL 문 중에서 트랜잭션 제어어(TCL)로 처리합니다. TCL에는 대표적으로 COMMIT과 ROLLBACK 문이 있습니다.

COMMIT: 데이터를 입력, 수정, 삭제한 후 이 작업을 영구적으로 테이블에 반영할 때 사용합니다.

ROLLBACK: 입력, 수정, 삭제하기 이전 상태로 돌아갈 수 있습니다.

자동커밋 속성

– autocommit 확인 SELECT @@AUTOCOMMIT; – autocommit 비활성화 SET autocommit = 0; – autocommit 변경 확인 SELECT @@AUTOCOMMIT;

자동커밋 비활성화 상태에서 트랜잭션 처리하기

CREATE TABLE emp_tran1 AS SELECT * FROM emp_test;

ALTER TABLE emp_tran1 ADD CONSTRAINT PRIMARY KEY (emp_no);

CREATE TABLE emp_tran2 AS SELECT * FROM emp_test; ALTER TABLE emp_tran2 ADD CONSTRAINT PRIMARY KEY (emp_no);