簡體   English   中英

MySQL插入到帶有另一個表的外鍵ID的表中

[英]mySQL Insert into table with foreign key ID from another

我有兩個表:p_model:(id auto inc),(名稱),(p_category_id) p_category:(id),(名稱)

基本上,每個模型都由一個類別關聯。 我需要生成一個INSERT語句,該語句將插入一個新模型並添加與之關聯的p_category的ID。

我的PHP函數傳遞兩個值:

function Perform_Insert_Model($model_name, $category_name)
{
$statement = "INSERT INTO p_model(`name`,`p_category_id`) VALUES ('$model_name','??????')";

//Where the "??????" is I need a statement that searches for $category_name (string) in the p_category table and returns the id.

....
}

該函數的示例調用為$ database-> Perform_Insert_Model(“ Banana”,“ Fruit”)。 香蕉將成為一種新產品,並具有水果ID的外鍵關聯。

您可以嘗試這種查詢(這只是1個查詢):

INSERT INTO p_model(`name`,`p_category_id`) SELECT '$model_name', `p_category_id`
   FROM p_category WHERE `category_name`='$category_name';

注意:這假定給定category_name只有1個類別,否則它將在p_model中插入多個記錄

暫無
暫無

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

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