[英]Update multiple rows also single row using textarea with mysql and php
[英]How to 'Multiple update rows once a row is deleted"? Using PHP and MySQL
很抱歉,這可能是一個愚蠢的問題,但是我希望獲得一些幫助,以使我能夠對問題形成正確的語法。 使用語言:PHP,MySQL
這是場景:
我有一個名為tbl_book的表
+----+------+-------+------------+
| id | code | copy | date_added |
+----+------+-------+------------+
| 1 | IX3V | 1 | 2018-12-09 |
| 2 | IX3V | 2 | 2018-12-09 |
| 4 | BN9Z | 1 | 2018-12-10 |
| 5 | BN9Z | 2 | 2018-12-10 |
| 6 | BN9Z | 3 | 2018-12-11 |
| 7 | BN9Z | 4 | 2018-12-12 |
| 8 | BN9Z | 5 | 2018-12-12 |
+----+------+-------+------------+
現在,例如,我想刪除id = 6。 刪除該行之后,我想將所有副本集從1,2,4,5設置為1,2,3,4,其中代碼= BN9Z。
預期產量:
+----+------+-------+------------+
| id | code | copy | date_added |
+----+------+-------+------------+
| 1 | IX3V | 1 | 2018-12-09 |
| 2 | IX3V | 2 | 2018-12-09 |
| 4 | BN9Z | 1 | 2018-12-10 |
| 5 | BN9Z | 2 | 2018-12-10 |
| 7 | BN9Z | 3 | 2018-12-12 |
| 8 | BN9Z | 4 | 2018-12-12 |
+----+------+-------+------------+
這個問題是針對我的項目的,我很高興為您提供一個相關的解決方案。 謝謝。
如果您知道要刪除的行的code
和copy
的值,則可以使用以下命令:
UPDATE `tbl_book`
SET `copy` = `copy`-1
WHERE `code` = `BN9Z` and `copy` > 3
更新
以下是一些代碼,這些代碼將刪除行並稍后(按ID)更新行。
mysql _...函數已棄用,並已從當前(7)版本的PHP中刪除。 改用mysqli函數。
include("db_connect.php"); // Update to use mysqli functions instead of mysql functions.
$get_to_delete_no = "3";
// Get the info from the row to be deleted
$rowinfo = mysqli_query("SELECT `id`,`code`,`copy` FROM `tbl_book` WHERE `id` = $get_to_delete_no");
if($rowinfo !== false) {
$rslt = mysqli_query("DELETE FROM `tbl_book` WHERE `id` = $get_to_delete_no");
if($rslt !== false) {
$rslt = mysqli_query("UPDATE `tbl_book` SET `copy` = `copy` - 1 WHERE `copy` > ".$rowinfo[0][`copy`]." AND `code` = ".$rowinfo[0][`code`]);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.