我有两个输入:
Basket Name: <input type="text">
和
Fruits<select name="fruits">
// Some java code that populate my drop down list from a SELECT sql
// that is pulling from my database table called 'Fruits'
// i.e. <option value='SELECT fruitID FROM fruits'> 'SELECT fruitName FROM fruits' </option>
...
</select>
我希望在提交<form>
时同时执行以下两个SQL插入:
SQL 1 :将'Basket Name'
插入名为'Baskets'
的表格中;
SQL 2 :将'fruitID'
(即<option value = "01"> Apple </option>
)插入名为'Baskets_Fruits'
的关联表
我的桌子结构:
BASKETS 表:
basketID - &gt; AUTO_INCREMENT int(11),NOT NULL
basketName - &gt; VARCHAR(255)
BASKETS_FRUITS 表格:
basketID_FK - &gt; &lt; basketID&#39;的外键来自Baskets表
fruitID_FK - &gt; “水果ID”的外键&#39;来自水果桌
FRUITS 表:
fruitID_FK - &gt; AUTO_INCREMENT int(11),NOT NULL
fruitName - &gt; VARCHAR(255)
如果引用的basketID_FK
自动增加,我如何获得当前basketID
?我不太确定如何编写SQL语法来获取AUTO-INCREMENTED列的值。
修改
我是否会这样做:
INSERT INTO baskets_fruits (basketID_FK, fruitIDFK)
(SELECT baskets.basketID, fruits.fruitID FROM baskets, fruits
WHERE baskets.basketID = "Foo" AND fruits.fruitID = "BAR");
但是"Foo"
和"Bar"
语法会是什么样的?
答案 0 :(得分:0)
这样的事情会起作用吗?这显然是在插入之后,然后你可以操纵你想要的任何东西。
SELECT * FROM BASKETS
INNER JOIN BASKETS_FRUITS ON basketID = basketID_FK
WHERE basketName = 'whatever the basket name is'
这会根据特定的basketName为您提供密钥,然后您可以根据需要找到fruitID_FK。