Php Laravel SQLite中的查询不起作用

Php Laravel SQLite中的查询不起作用,php,sql,laravel,Php,Sql,Laravel,我正在将SQLite与我的Laravel应用程序一起使用,并尝试运行一个whereHas查询: $payments = Payment::whereHas('payers', function($q){ $q->where('user_id', '=', 1); })->get(); 这将返回一个空结果,这是由于整数1被转换为字符串,由laravel/eloquent生成的结果查询证明了这一点: select * from "payments" where (select

我正在将SQLite与我的Laravel应用程序一起使用,并尝试运行一个
whereHas
查询:

$payments = Payment::whereHas('payers', function($q){
    $q->where('user_id', '=', 1); 
})->get();
这将返回一个空结果,这是由于整数1被转换为字符串,由laravel/eloquent生成的结果查询证明了这一点:

select * from "payments" where (select count(*) from "payers" inner join "payer_payment" on "payers"."id" = "payer_payment"."payer_id" where "payer_payment"."payment_id" = "payments"."id" and "user_id" = 1) >= '1'
回顾之后,我尝试使用
DB::raw
如下:

$payments = Payment::whereHas('payers', function($q){
      $q->where('user_id', '=', DB::raw(1)); 
})->get();
但没有改善。如何在不更改数据库驱动程序的情况下修复此问题

$payments = Payment::whereHas('payers', function($q){
      $q->where('user_id', '=', 1); 
}, '>=', DB::raw(1))->get();