我在 PHP 中将 PDO 与 PostgreSQL 结合使用。
我会让我的用户上传文件。
我想给保存的图片添加记录id。
是否可以在插入数据库之前获取(或保留)记录 ID。
我不认为这是可能的,只是想确定一下。
最佳答案
是的,您应该使用 postgres 函数 nextval
来获取序列中的下一个值。查看表的 id 列中的默认值,它应该包含对使用的序列的 nextval 调用。
例如,如果表格看起来像这样:
image_id bigint not null default nextval('image_image_id_seq'::regclass)
data bytea not null
你可以调用:
SELECT NEXTVAL('image_image_id_seq') ;
这将“保留”您稍后使用的 id:
INSERT INTO image (image_id, data) VALUES (?, ?) ;
关于php - 是否有可能在插入之前获取要插入数据库的id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6800856/