Hellos家伙,
我遇到了问题。我想向数据库插入2个值我的问题是其中一个值必须来自另一个表,继承代码://Selecionar tabela UVIndex da DB
$sql = "INSERT INTO praia (nome_praia) VALUES ('$nome_praia'); INSERT INTO utilizador (nome_utilizador, password_utilizador, nome_praia) VALUES ('$nome_utilizador', '$password', (SELECT FROM praia (idPraia) WHERE nome_praia=' .$nome_praia)";
$result = $conn->multi_query($sql)
$conn->close();
我的问题是什么?
答案 0 :(得分:0)
您可以在select语句中使用insert:
INSERT INTO table2
(column_name)
SELECT column_name
FROM table1;
答案 1 :(得分:0)
假设您选择仅返回单个结果您应该使用有效的选择。
SELECT idPraia FROM praia WHERE nome_praia= '$nome_praia'
"INSERT INTO praia (nome_praia) VALUES ('$nome_praia');
INSERT INTO utilizador (nome_utilizador, password_utilizador, nome_praia)
VALUES ('$nome_utilizador', '$password', (SELECT idPraia FROM praia
WHERE nome_praia= '$nome_praia' ));";
答案 2 :(得分:0)
我认为你的表" utilizador"应该有一个外键领域" idPraia"而不是" nome_praia"领域。然后使用以下代码,而表#34; praia"的关键字段名称是" idPraia"。
$sql = "INSERT INTO praia (nome_praia) VALUES ('$nome_praia'); INSERT INTO utilizador (nome_utilizador, password_utilizador, idPraia) VALUES ('$nome_utilizador', '$password', (SELECT idPraia FROM praia WHERE nome_praia='$nome_praia')";