728x90
반응형
우리가 익히 알고 있는 INSERT 방식은 insert into <테이블> (컬럼명들) values (컬럼값들) 로 현재 모든 DBMS에서 사용되고 있다.
하지만 테이블의 컬럼이 30개정도가 넘어가면 컬럼명과 컬럼값의 매핑이 어려울 때가 존재한다. (실제 프로젝트에서 한 테이블에 컬럼개수가 200개가 넘어가는 것을 경험한 적이 있다.)
이 문제를 해결하기 위해 mariadb 에서는 update set 문법과 비슷한 insert into set 문법을 개발하고 제공한 것으로 추정된다.
INSERT SET 예제
/* dummy_table 테이블에 insert into set 를 이용한 데이터삽입 쿼리 예제 */
insert into dummy_table
set
no = 1
, title = '제목'
, memo = null
, create_dt = current_timestamp
, update_dt = current_timestamp
예제를 보면 확실히 insert into values 방식보다 가독성이 좋을 것을 확인 할 수 있다.
단점은 ANSI-SQL이 아니기 때문에 다른 DBMS 에서 사용이 불가능하다는 점이다. (Postgresql 14에서 지원이 안되는 것을 확인)
다양한 DBMS을 지원하는 어플리케이션에서는 INSERT INTO SET 를 권장하지 않지만 mariadb만 사용하는 어플리케이션은 INSERT INTO SET를 사용하는 것이 좋은 선택인 것 같다.
mariadb insert 문법 공식사이트 : https://mariadb.com/kb/en/insert/
728x90
반응형
'Database > Mariadb' 카테고리의 다른 글
[Mariadb] spring session 사용시 java.sql.SQLException: Deadlock found when trying to get lock 발생 (0) | 2022.02.14 |
---|---|
윈도우에서 Mariadb 10.6.3 64bit 버전 설치하는 방법 (0) | 2021.08.04 |
MariaDB Xpand 소개 (2) | 2021.03.15 |
[mariadb] flush 명령어 정리 (0) | 2021.02.04 |
[Mariadb] db 및 user 생성 방법 (0) | 2021.01.06 |