我正在将图像文件上传到存储服务器。上传之前,我应该编写文件名,其中包含AUTOINCREMENT VALUE(例如12345_filename.jpg)。
在插入数据库之前如何获得自动增量值?
我只看到一种解决方案
还有其他解决方案吗?
谢谢
最佳答案
完成插入后,自动增量值由数据库本身生成;这意味着您无法在执行实际的插入查询之前获取它。
您提出的解决方案不是经常使用的解决方案,而是:
where
查询的update
子句中先前生成的自动增量,以标识要更新的行。 当然,为了安全起见,所有这些操作都必须在事务中进行(以确保“全有或全无”行为)
作为伪代码:
begin transaction
insert into your table (half empty values);
$id = get last autoincrement id
do calculations
update set data = full data where id = $id
commit transaction