Den*_*zen 3 php mysql sql-delete
我需要做的是: - 从表中删除一个条目formfields
- 使用排序更新每个字段>(删除字段的排序) - 将更新字段的顺序设置为当前值减1(例如,如果字段上的当前排序是8,那么它应该设置为7).
这可能在一个查询中?或者我该如何实现?
您可以设置一个事务来一次完成所有操作.
鉴于下表:
CREATE TABLE `formfields` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(25) NOT NULL,
`order_no` int(11) NOT NULL,
PRIMARY KEY (`id`)
);
Run Code Online (Sandbox Code Playgroud)
您可以执行以下操作:
START TRANSACTION;
DELETE FROM formfields WHERE order_no = {YOUR_NUM};
UPDATE formfields SET order_no = order_no - 1 WHERE order_no > {YOUR_NUM};
COMMIT;
Run Code Online (Sandbox Code Playgroud)