0
不知何故,我必須在某個地方犯錯,似乎找不到正確的解決方案,必須做錯事。我想從PHP頁面更新名爲Celebrity的Azure SQL表,但它不更新。你能請幫助我,或告訴我什麼我做錯了SQL更新表(使用PHP的Azure)
<?php
try {
$conn = new PDO("sqlsrv:Server= $host ; Database = $db ", $user, $pwd);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(Exception $e){
die(var_dump($e));
}
if(!empty($_POST)) {
try {
$FirstName = $_POST['FirstName'];
$LastName = $_POST['LastName'];
$id = $_POST['id_celebrity'];
$sql_update = "UPDATE
Celebrity
SET
(FirstName, LastName)
VALUES
(?,?)
WHERE
id_celebrity='$id'";
$stmt = $conn->prepare($sql_update);
$stmt->bindValue(1, $FirstName);
$stmt->bindValue(2, $LastName);
$stmt->execute();
}
catch(Exception $e) {
die(var_dump($e));
}
echo "Celebrity Updated in DB!";
}
?>
這裏是正在使用的指令,這就是我從AZURE服務器返回:
object(PDOException)#3 (8) { ["message":protected]=> string(97) "SQLSTATE[42000]: [Microsoft][SQL Server Native Client 11.0][SQL Server]Incorrect syntax near '('." ["string":"Exception":private]=> string(0) "" ["code":protected]=> string(5) "42000" ["file":protected]=> string(62) "D:\home\site\wwwroot\CelebrityOverview\CelebrityEditResult.php" ["line":protected]=> int(57) ["trace":"Exception":private]=> array(1) { [0]=> array(6) { ["file"]=> string(62) "D:\home\site\wwwroot\CelebrityOverview\CelebrityEditResult.php" ["line"]=> int(57) ["function"]=> string(7) "execute" ["class"]=> string(12) "PDOStatement" ["type"]=> string(2) "->" ["args"]=> array(0) { } } } ["previous":"Exception":private]=> NULL ["errorInfo"]=> array(3) { [0]=> string(5) "42000" [1]=> int(102) [2]=> string(80) "[Microsoft][SQL Server Native Client 11.0][SQL Server]Incorrect syntax near '('." } }
它的工作!非常感謝:-) –
不客氣:) – Jonast92