Я создал базу данных SQLite3 через PHP и PDO
Вставка записи и удаление записи работает нормально, но запись UPDATE не
public function update_All($mStore_Order_DataClass) {
try
{
$sql = "UPDATE Orders "
. "SET x_Name = :x_Name, "
. "x_PhoneNumber1 = :x_PhoneNumber1, "
. "x_PhoneNumber2 = :x_PhoneNumber2, "
. "x_Address1 = :x_Address1, "
. "x_Date = :x_Date, "
. "x_Time = :x_Time, "
. "x_Status = :x_Status, "
. "x_M2 = :x_M2, "
. "x_M3 = :x_M3, "
. "x_Barcode = :Barcode, "
. "x_Price = :x_Price, "
. "x_Discount = :x_Discount, "
. "x_Number = :x_Number "
. "WHERE x_ID = :x_ID ";
$stmt = $this->pdo->prepare($sql);
$stmt->bindValue(':x_ID' , $mStore_Order_DataClass->getx_ID() );
$stmt->bindValue(':x_Name' , $mStore_Order_DataClass->getx_Name() );
$stmt->bindValue(':x_PhoneNumber1', $mStore_Order_DataClass->getx_PhoneNumber1());
$stmt->bindValue(':x_PhoneNumber2', $mStore_Order_DataClass->getx_PhoneNumber2());
$stmt->bindValue(':x_Address1' , $mStore_Order_DataClass->getx_Address1() );
$stmt->bindValue(':x_Date' , $mStore_Order_DataClass->getx_Date() );
$stmt->bindValue(':x_Time' , $mStore_Order_DataClass->getx_Time() );
$stmt->bindValue(':x_Status' , $mStore_Order_DataClass->getx_Status() );
$stmt->bindValue(':x_M2' , $mStore_Order_DataClass->getx_M2() );
$stmt->bindValue(':x_M3' , $mStore_Order_DataClass->getx_M3() );
$stmt->bindValue(':x_Barcode' , $mStore_Order_DataClass->getx_Barcode() );
$stmt->bindValue(':x_Price' , $mStore_Order_DataClass->getx_Price() );
$stmt->bindValue(':x_Discount' , $mStore_Order_DataClass->getx_Discount() );
$stmt->bindValue(':x_Number' , $mStore_Order_DataClass->getx_Number() );
$stmt->execute();
$mrowCount = $stmt->rowCount();
echo "\nA :\n{$mrowCount}\n";
return TRUE;
}
catch (\PDOException $e)
{
return FALSE;
}
}
Кажется, что нет совпадения и поэтому нет обновленияпричина $mrowCount
равна 0
Я вижу, что есть совпадение браузер БД для SQLITE
![DB browser for SQLITE Log](https://i.stack.imgur.com/dn950.png)
А также я поставил точку останова в коде, и ниже вы можете увидеть $ sql из переменного окна IDE NetBeans:
"UPDATE Orders SET SET x_Name =: x_Name, x_PhoneNumber1 =: x_PhoneNumber1, x_PhoneNumber2 =: x_PhoneNumber2, x_Address1 =: x_Address1, x_Date =: x_Date, x_Time =: x_Time, x_Status =: x_Status, x_M = x_M_M_2: = код_файла: x_M = код_файла: x_M2: x_2: код_файла: x_M2: x_2: код_файла: x_M2: x_2: код_файла: x_M2: =: x_Price, x_Discount =: x_Discount, x_Number =: x_Number WHERE x_ID =: x_ID "
И:
![enter image description here](https://i.stack.imgur.com/Xn65L.png)
Так что вы можетеувидеть, что для ID-2 найдено совпадение, а обновления не происходит
Кстати, естьошибки нет и TRUE возвращается
Что здесь происходит?