반응형
mariaDB merge
mariaDB table에 데이터 입력 시 insert 또는 update를 하기 위한 쿼리 merge를 작성하겠습니다.
간단한 테스트를 위해 아래 순서로 작성하였습니다.
- 테이블 생성
- PROCEDURE 생성
- PROCEDURE 실행
테이블 생성
CREATE TABLE `user` (
`id` varchar(100) NOT NULL COMMENT '아이디',
`name` varchar(100) DEFAULT NULL COMMENT '이름',
`regi_dd` date DEFAULT NULL COMMENT '등록일',
`modi_dd` date DEFAULT NULL COMMENT '수정일',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
프로시저 생성
- 간단한 테스트를 위해 PROCEDURE로 만들었습니다.
CREATE PROCEDURE proc_merge(
p_id varchar(100),
p_name varchar(100)
)
begin
INSERT INTO user
(id, name, regi_dd)
VALUES (p_id, p_name, current_timestamp())
ON DUPLICATE KEY UPDATE
name = p_name,
modi_dd = current_timestamp();
END
프로시저 실행
- 아래처럼 PROCEDURE를 두 번 실행했습니다.
call hoho.proc_merge('id1','이름1');
call hoho.proc_merge('id1','이름1변경');
select * from hoho.user;
결과
반응형
'db > maria db' 카테고리의 다른 글
maria db restore DBeaver error ( maria db 복원 에러) (1) | 2024.09.17 |
---|---|
maria db 테이블 명세서 쿼리 (0) | 2024.09.06 |
mariadb dump 백업 (0) | 2024.09.03 |
mariadb dump 복원 (0) | 2024.09.03 |
maria db 생성(dbeaver) (0) | 2024.09.03 |