繁体   English   中英

SQLSTATE [HY000]:一般错误:Laravel发生2053错误

[英]SQLSTATE[HY000]: General error: 2053 error occurs at Laravel

首先,我的环境是LAMP(M代表MariaDB)。

整个错误是:

SQLSTATE[HY000]: General error: 2053 (SQL: UPDATE Demos SET Hit = ifnull(Hit,0) + 1 WHERE id = '27')

模型中的代码是

protected function IncreaseHit($id) {
    DB::select('UPDATE Demos SET Hit = ifnull(Hit,0) + 1 WHERE id = \''.$id.'\'');
}

我想说的是这段代码在我当地很有效。 (当地环境是MAMP。)

并且在控制器上调用上述模型方法的代码是

if(Cookie::get('My_Cookie_'.$id) != 'On'){
    Demos::IncreaseHit($id);
    Cookie::queue(Cookie::make('CS_View_'.$id, 'On',2160000));
}//Cookie Check

我找不到有什么问题...请让我知道如何解决这个错误。

使用DB::update()

DB::update('UPDATE Demos SET Hit = ifnull(Hit,0) + 1 WHERE id = ?', [$id]);

当没有任何东西可以获取时,也会产生这个错误。 这种方式使用DB::select()你试图从一个不返回任何东西的语句中获取东西。

文档: https//laravel.com/docs/5.2/database#running-queries

DB::connection('my_conn')->update('UPDATE asterisk.chan_line SET sms_balance = (sms_balance-1) where id = ? ', [$value->id]);

希望能帮助到你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM