gpt4 book ai didi

php - mysqli语句中的@变量

转载 作者:行者123 更新时间:2023-11-29 23:07:31 25 4
gpt4 key购买 nike

我现在坐了几个小时并尝试通过我的 PHP 脚本传递多个查询。

基本上,我想查询地址文件夹中最后插入的索引,然后将该索引保存为变量“@address”,以便我可以在下一个查询等中使用它。

SQL 脚本工作正常,但是,一旦我在 PHP 脚本中使用它,它就不会插入任何新数据。

此外,我不想将其拆分为多个单个查询,因为此脚本将在 Web 应用程序中使用,其中将处理大量新注册,因此重要的是,当两个客户在同时保证外键的正确分配。

如有任何建议,我们将不胜感激。

<?php
$link = mysqli_connect("localhost", "root", "test", "test");

if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}

$query = 'SET @address = (select max(idaddress) from test.address) + 1; SET @customer= (select max(idcustomer) from test.customer) + 1;
SET @contract= (select max(idcontact) from test.contract) + 1;
INSERT INTO `test`.`address` (`idaddress`, `street`, `number`, `zip`) VALUES (@address, "main street", "584", "54545");
INSERT INTO `test`.`customer` (`idcustomer`, `name`, `surname`, `customeraddress`) VALUES (@customer, "Smith", "Michael", @address);
INSERT INTO `test`.`contract` (`idcontract`, `customernumber`) VALUES (@contract, @costumer);
';
echo $query; // for testing purposes
if (mysqli_multi_query($link, $query)) {
do {
/* store first result set */
if ($result = mysqli_store_result($link)) {
mysqli_free_result($result);
}

} while (mysqli_next_result($link));
}

mysqli_close($link);
?>

复杂性

最佳答案

用这个代替你的。希望它对你有用。

$query = "SET @address = (select max(idaddress) from test.address) + 1"; 
$query = "SET @customer= (select max(idcustomer) from test.customer) + 1";
$query = "SET @contract= (select max(idcontact) from test.contract) + 1";
$query = "INSERT INTO `test`.`address` (`idaddress`, `street`, `number`, `zip`) VALUES (@address, 'main street', "584", "54545")";
$query = "INSERT INTO `test`.`customer` (`idcustomer`, `name`, `surname`, `customeraddress`) VALUES (@customer, 'Smith', 'Michael', @address)";
$query = "INSERT INTO `test`.`contract` (`idcontract`, `customernumber`) VALUES (@contract, @costumer)";

关于php - mysqli语句中的@变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28233094/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com