반응형
MariaDB 다중 행 삽입 순서
아래 질문을 고려해 주십시오.
DELIMITER $
BEGIN NOT ATOMIC
IF (Select count(*) from t1 where name = 'test') = 0 THEN
INSERT into t1(categoryId,name, language)
values
(NextVal(categorySequence),'test','en-US'),
(LastVal(categorySequence),'test','de-DE');
END IF ;
END $
DELIMITER ;
같은 'categoryId'의 레코드 2개를 삽입하고 싶습니다.categoryId를 생성하기 위해 mariadb 시퀀스 https://mariadb.com/kb/en/library/sequence-overview/ 을 사용하고 있습니다.NextVal()은 다음 시퀀스 번호를 반환하고 LastVal()은 마지막 시퀀스 번호를 반환합니다(NextVal() 함수와 동일).위의 쿼리는 INSERT 문 순서가 왼쪽에서 오른쪽으로 있으면 정상적으로 작동합니다(테스트에서 찾았습니다).예: "insert into x values('1'), ('2')
'1'이 먼저 삽입되고 '2'가 삽입되지만 mariadb가 항상 이 순서를 따를지는 모르겠습니다.INSERT 주문에 대해 도와주시거나 다른 질문을 제안해주시기 바랍니다.
그건 중요하지 않아.MariaDB는 각 삽입이 서로 다른 시퀀스 값을 사용하도록 보장합니다.
어떤 것이 먼저 실행되느냐에 왜 그렇게 신경을 쓰십니까?특정 삽입 순서를 확인해야 하는 경우 두 개의 별도 삽입 SQL 문을 실행합니다.
언급URL : https://stackoverflow.com/questions/50999811/mariadb-multiple-row-insert-order
반응형
'programing' 카테고리의 다른 글
href in jquery로 요소를 얻는 방법은 무엇입니까? (0) | 2023.09.03 |
---|---|
Mysql 워크벤치에서 두 모델 간에 테이블을 복사하는 방법은 무엇입니까? (0) | 2023.09.03 |
asp.net 에서 "Access-Control-Allow-Origin" 헤더를 구현하는 방법 (0) | 2023.09.03 |
Android Studio - 인터넷이 연결되지 않은 Android Emulator WiFi (0) | 2023.08.29 |
MySQL에서 대소문자를 구분하지 않는 REPLACE? (0) | 2023.08.29 |