![](/img/trans.png)
[英]How to insert multiple rows for comma seperated values in mysqli prepared statement?
[英]Insert multiple rows in mysqli prepared statement
我确实有3个mysql表“ users”,“ banks”和“ user_bank”。 每个用户必须至少有一个银行,最多两个。
当用户注册系统时,我还需要将银行详细信息插入到user_bank
表中。
这是我尝试的方法:
$success=FALSE;
if($success == FALSE) {
$query = "INSERT INTO user_bank (
beneficiary_id
, beneficiary_bank_id
, branch_id
) VALUES (?, ?, ?)";
$stmt = $mysqli->prepare($query);
$stmt->bind_param('iii', $lastInsertId
, $bank_one
, $branchId_one
);
$stmt->execute();
if ($stmt->affected_rows == 1) {
$success=TRUE;
if(!empty($bank_two) && !empty($branchId_two)) {
$query = "INSERT INTO user_bank (
id
, bank_id
, branch_id
) VALUES (?, ?, ?)";
$stmt = $mysqli->prepare($query);
$stmt->bind_param('iii', $lastInsertId
, $bank_two
, $branchId_two
);
$stmt->execute();
$success=TRUE;
}
}
}
if ($success == TRUE) {
$messages = array('success'=>true, 'message'=>'You successfully registered.');
}
我的问题是,有人可以告诉我有一种方法可以使用单个查询吗? 如果是这样,它的状况如何?
希望有人可以帮助我。 谢谢。
您需要学习阅读MySQL手册。 如果您检出INSERT定义,则会在VALUES规范中找到它:
使用VALUES语法的INSERT语句可以插入多行。 为此,请包括多个列值列表,每个列值括在括号内并用逗号分隔。 例:
插入tbl_name(a,b,c)值(1,2,3),(4,5,6),(7,8,9);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.