原始查询来更改postgres中的序列在laravel中不起作用

时间:2019-07-28 11:20:59

标签: laravel postgresql sequence

我正在尝试使用以下原始查询为postgres数据库中的主键设置初始值。

 // Alter sequence
 DB::raw("alter sequence orders_id_seq restart with 10000");

 //create order
 Order::create([
    'name' => "Hello Order",
 ]);

但是订单ID仅从1开始,而不是10000

然后,我通过Datagrip在数据库控制台中执行了相同的SQL查询。瞧,行得通。新的数据库记录在适当的地方编号。我想知道为什么当我使用DB::raw()时它不起作用吗?

对于laravel应用程序和Datagrip(SQL gui工具),我都使用相同的postgres用户凭据。

Postgres-10,Laravel 5.8

1 个答案:

答案 0 :(得分:0)

DB::raw不会执行查询。 您应该将其添加到DB::update中,如下所示:

DB::update(DB::raw("alter sequence orders_id_seq restart with 10000"));
相关问题