Php 如何检查表中的一行是否已插入laravel eloquent?

Php 如何检查表中的一行是否已插入laravel eloquent?,php,mysql,laravel,eloquent,Php,Mysql,Laravel,Eloquent,在查询数据库中的所有信息之前,我想检查表中的一行是否插入,如果没有任何新的插入,我将不使用查询方法。但我非常了解如何使用Eloquent库在Laravel5中检查它是否插入 我已经研究了一些教程,我发现如下sql句子,但我不知道如何在雄辩中使用它,而且这个sql是否按照我的预期工作 在checkingIfNotificationUpdated方法中,我想检查当一行仅插入到该表中时是否为true和false,但作为这句话,它将查询所有数据 public function checkingIf

在查询数据库中的所有信息之前,我想检查表中的一行是否插入,如果没有任何新的插入,我将不使用查询方法。但我非常了解如何使用Eloquent库在Laravel5中检查它是否插入

我已经研究了一些教程,我发现如下sql句子,但我不知道如何在雄辩中使用它,而且这个sql是否按照我的预期工作

在checkingIfNotificationUpdated方法中,我想检查当一行仅插入到该表中时是否为true和false,但作为这句话,它将查询所有数据

   public function checkingIfNotificationUpdated(){

//       SELECT * FROM INFORMATION_SCHEMA.'.$this->table.' WHERE DATE_SUB(NOW(), INTERVAL 1 HOUR) < UPDATE_TIME
         RETURN self::select('*')->where(DB::raw('DATE_SUB(NOW(), INTERVAL 1 HOUR)'),'<','UPADTE_TIME')->get();
    }
这是我使用dd()时的响应数据


如果您使用的是Elount,则无需查询回数据库

假设您执行如下插入操作:

$myModel = ModelClass::create($params);
或者这个:

$myModel = new ModelClass($params);
$myModel->save();
然后,您可以执行以下检查:

if (! empty($myModel->id)) {
    // Model has been successfully inserted
}

如果您使用的是Elount,则无需查询回数据库

假设您执行如下插入操作:

$myModel = ModelClass::create($params);
或者这个:

$myModel = new ModelClass($params);
$myModel->save();
然后,您可以执行以下检查:

if (! empty($myModel->id)) {
    // Model has been successfully inserted
}

我认为您可以在插入以下内容时检查输入字段: 这里,

在控制器中:

     $input = $request->all();

    //check input value if exists or not in db...

     $b_exists = ModelClass::where('title','=',$input['title'])->exists();

     if($b_exists){
     //show message: alteady exists
     }
     else{
     //
     ....new data inserted 
    }

我认为您可以在插入以下内容时检查输入字段: 这里,

在控制器中:

     $input = $request->all();

    //check input value if exists or not in db...

     $b_exists = ModelClass::where('title','=',$input['title'])->exists();

     if($b_exists){
     //show message: alteady exists
     }
     else{
     //
     ....new data inserted 
    }

我的方法与插入语句无关,它将由另一个函数或控制器执行,我只想检查通知表是否由另一个人插入,如果是,我将向客户端查询数据。如果我尝试使用这个构建方法公共函数checkingIfNotificationInserted(){$id=self::getQueueableId();return$id;}是否可能?如果一些控制器不使用eloquent,那么就切换它们,要么到处使用eloquent,要么根本不使用。如果这样做,则可以使用事件处理程序。laravel文档涵盖了eloquent执行插入时触发的事件,但如果使用原始数据库插入,则不会触发这些相同的事件。如何使用该事件?我的方法与插入语句无关,它将由另一个函数或控制器执行。我只想检查通知表是否由另一个人插入,如果是,我会检查将向客户端查询数据。如果我尝试使用这个构建方法公共函数checkingIfNotificationInserted(){$id=self::getQueueableId();return$id;}是否可能?如果一些控制器不使用eloquent,那么就切换它们,要么到处使用eloquent,要么根本不使用。如果这样做,则可以使用事件处理程序。laravel文档涵盖了Elounce执行插入时触发的事件,但如果使用原始数据库插入,则不会触发这些相同的事件。如何使用该事件?我想是的,但还没有像我担心的那样。我想是的,但还没有像我担心的那样