我目前正在开发一个数据库,它将语句存储在2个表中,并且有另一个表将语句链接在一起。 前两个表自动递增每个条目上的主ID,但是我需要知道已经给出的新ID以将其输入到链接它们的表中。
Table 1
SID | Statement | Language
1 | Have a cup of coffee | English
2 | Have a cup of green tea | English
Table 2
AID | Action
1 | recycle the cup
2 | feel full of cafine
3 | throw away the cup
4 | feel healthy
5 | jump
Table 3 - relationships
SID | AID
1 | 1
1 | 2
1 | 3
2 | 1
2 | 3
2 | 4
所以一个例子是:
INSERT INTO actions(Action) VALUES ('Go to the pub');
INSERT INTO statements(statement, Language) VALUES ('Have a pint', 'English');
关系就是这样,知道这个例子的自动增量值是3和6:
INSERT INTO Relationships(SID,AID) VALUES (3,6);
我需要将值3和6作为变量插入,例如:
INSERT INTO Relationships(SID,AID) VALUES (id1, id2);
答案 0 :(得分:1)
试试这个
INSERT INTO actions(Action) VALUES ('Go to the pub');
SET @aid = LAST_INSERT_ID();
INSERT INTO statements(statement, Language) VALUES ('Have a pint', 'English');
SET @sid = LAST_INSERT_ID();
INSERT INTO Relationships(SID,AID) VALUES (@sid,@aid);