我想实施停车场申请
所以有一个车库有5个或更多的停车场
当司机停放车辆时,车库中的下一个空位应该分配给他。
所以我有一个带5个或更多插槽的桌子车库 我更新时有问题 更新车库设置free = 0,设置car = 1(car_id)然后所有空闲插槽都更新我如何才能限制只更新第一个空闲行?
任何人都可以帮助我
提前谢谢(假) 谢谢 当我停放一辆车时,我有车库桌,每层都有水平和插槽我只想更新免费插槽
答案 0 :(得分:7)
您需要指定要更新的记录,否则数据库将更新所有。如果您希望专门更新一条记录,可能需要使用PRIMARY KEY
条款引用其WHERE
。
如果您没有为表格指定PRIMARY KEY
,you could use SQLite's rowid
column.就像这样:
SELECT rowid FROM garage WHERE free = 1;
然后,假设您确定汽车42的免费地点5:
UPDATE garage SET free = 0, car = 42 WHERE rowid = 5;
如果您愿意,可以将这两个步骤合并为一个查询:
UPDATE garage SET free=0, car=42 WHERE rowid IN (SELECT rowid FROM garage WHERE free=1 LIMIT 1);