[英]MySQL How to use dynamic PHP variables inside INSERT INTO SELECT query?
[英]HOW TO: Select inside INSERT on php to mysql database
大家好,
我有問題。 我想向數據庫中插入 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();
我的問題是什么?
您可以使用 insert into select 語句:
INSERT INTO table2
(column_name)
SELECT column_name
FROM table1;
假設您選擇只返回一個結果 您應該使用一個有效的選擇。
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' ));";
我認為你的表“utilizador”應該有一個外鍵字段“idPraia”而不是“nome_praia”字段。 然后使用下面的代碼,而表“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')";
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.