簡體   English   中英

基於基於MySQL的另一個插入的插入

[英]Insert based on Another Insert with mysql

我必須在兩個不同的表中運行兩個插入語句。 的SQL如下:

INSERT INTO Table1 ('t1_name', 't1_class') VALUES ('Joe','8');

表1具有一個自動遞增的ti_id列

INSERT INTO Table2 ('t2_ti_id','t2_course') VALUES(< 'ti_id' from Table1 call >,
      'English'),(< 'ti_id' from Table1 call >, 'Math').

因此最終結果應該是這樣的,以便在table2查詢中使用為table1查詢設置的自動增量ID

Table1 

t1_id     ti_name    t1_class     
   1        Joe          8


Table2

 t2_id    t2_t1_id    t1_course
   1         1         English
   2         1          Math

t1_id和t2_t1_id具有外鍵設置

請告訴我如何從相同的sql進行調用,這樣我就不必為此創建單獨的perl腳本

提前致謝

使用last_insert_id()

嘗試這個:

INSERT INTO Table1 (t1_name, t1_class) VALUES ('Joe','8');

SET @t1id = SELECT LAST_INSERT_ID();

INSERT INTO Table2 (t2_ti_id, t2_course) 
VALUES (@t1id,'English')

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM