我有两张桌子: p_model:(id auto inc),(name),(p_category_id) AND p_category:(id),(name)
基本上每个模型都与一个类别相关联。我需要生成一个插入新模型的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的外键关联。
答案 0 :(得分: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只有一个类别,或者它将在p_model中插入多个记录