Laravel 5 插入数据后返回主键ID

时间:2022-08-12 18:37:32

方法一:

$info = DB::table('表名')->insertGetId(['imgName' => $fileName]);//图片名入库后返回添加数据行的主键ID

方法二:(适用于Mysql数据库)

执行原生SQL,然后返回新添加的主键ID值

语法:INSERT INTO 表名(字段1, 字段2, 字段3) VALUES (值1, 值2, 值3);SELECT @@IDENTITY AS returnName; #返回刚插入的数据的主键ID并起别名为 “returnName”

栗子: DB::connection('mysql')->insert("insert into userinfo(name,phone,money) values ('张三','1521640222','99999.99');SELECT @@IDENTITY AS returnID;");

 方法三:(适用于Postgresql数据库)

在添加完数据后直接返回刚添加数据的主键ID

语法:INSERT INTO 表名 ("字段1", "字段2") values ('值1', '值2') RETURNING 返回的主键ID;

栗子:INSERT INTO "public"."maincarde" ("m_card", "m_identity_number") values ('1234567890', '110101198510041528') RETURNING m_id;

个人感觉方法一比较适用于Laravel配置的默认数据库,方法二比较适用于扩展连接的其它数据库