簡體   English   中英

如何在MySQL UPDATE查詢期間連接兩個字符串?

[英]How to concatenate two string during MySQL UPDATE query?

使用案例:創建了一個記錄Spot,Code,Language,Count ...后來發現輸入的語言是錯誤的。 嘗試使用UPDATE查詢更改語言。 連接字符串仍然顯示相同。 更新的語言字符串未在連接字符串中更改。

使用此MySql查詢創建記錄

$sql = "INSERT INTO library (spot,code,language,count,litcode) values(?,?,?,?,CONCAT(language,'-',code))";

嘗試使用此MySql查詢更新語言

Database::connect(); $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
$sql = "UPDATE literatures set spot = ?, code = ?,language = ?, count =?, litcode = CONCAT(language,'-',code) WHERE id = ?";
$q = $pdo->prepare($sql); 
$q->execute(array($spot,$code,$language,$count,$litcode,$id)); 
Database::disconnect();

最后語言已更新,但未在連接字符串中更新。

UPDATE查詢中的任何錯誤?

您正在嘗試綁定$litcode但您有CONCAT(language,'-',code) 你有5個? 在您的查詢中,但您正在嘗試綁定6個參數。

將您的代碼更改為:

Database::connect(); 
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
$sql = "UPDATE literatures set spot = ?, code = ?, language = ?, count = ?, litcode = ? WHERE id = ?";
$q = $pdo->prepare($sql); 
$q->execute(array($spot,$code,$language,$count,$litcode,$id)); 
Database::disconnect();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM