현재 삽입 ID를 한 SQL 요청의 다른 열의 필드 값으로 사용
단 한 번의 SQL 요청으로 다음을 수행할 예정입니다.
INSERT INTO TABLE1 (col2,col3,col4) VALUES('a','b',current_insert_id());
그러나 current_insert_id()가 구현되지 않은 것 같습니다.
시도 횟수:
INSERT INTO TABLE1 (col2, col3, col4) VALUES('a','b',last_insert_id());
마지막 필드에서 0을 줍니다.
INSERT INTO TABLE1 (col2, col3, col4) VALUES('a','b','dummy_value');
UPDATE TABLE1 SET col4=LAST_INSERT_ID() WHERE ID=LAST_INSERT_ID();
하지만 이것은 2개의 쿼리를 사용합니다.
한 가지 방법은 다음과 같습니다.
INSERT INTO TABLE1
(col2,col3,col4)
VALUES
(
'a',
'b',
(
SELECT AUTO_INCREMENT
FROM information_schema.TABLES
WHERE TABLE_SCHEMA = "YOUR_DB_NAME"
AND TABLE_NAME = "TABLE1"
)
);
하지만 생산에서는 하지 마세요.좋지 않아요 :)
언급URL : https://stackoverflow.com/questions/53112150/use-the-current-insert-id-as-a-field-value-of-another-column-in-one-sql-request
'programing' 카테고리의 다른 글
| Oracle을 통한 데이터베이스 소스 제어 (0) | 2023.08.07 |
|---|---|
| 도커 파일 빌드 - 오류를 무시할 수 있습니까? (0) | 2023.08.07 |
| 도커: "매니페스트 목록 항목에 windows/amd64와 일치하는 매니페스트가 없습니다." (0) | 2023.08.07 |
| jQuery UI 정렬 가능 위치 (0) | 2023.08.07 |
| ADO.NET을 사용하여 테이블 값 매개 변수 전달 (0) | 2023.08.07 |