0
$id = $this->db->query("SELECT LAST_INSERT_ID() AS ID")->row();
$w = $this->db->query("UPDATE bet_type_default SET current = 0 WHERE id <> ".$id."  ");

错误输出为:

遇到 PHP 错误

严重性:4096

消息:stdClass 类的对象无法转换为字符串

文件名:models/model_name.php

行号:29 发生数据库错误

错误号:1064

您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 '' 附近使用正确的语法

更新 bet_type_default SET current = 0 WHERE id <>

文件名:C:\wamp\www\testing\system\database\DB_driver.php

行号:330

4

2 回答 2

3

尝试 :

$row = $this->db->query("SELECT LAST_INSERT_ID() AS ID ")->row_array();

$w = $this->db->query(
             "UPDATE bet_type_default SET current = 0 WHERE id <> ".$row['ID']
     );

相反,您应该使用活动记录模式:

$id = $this->db->insert_id();
$this->db->where('id <> ', $id)
         ->update('bet_type_default' , array('current'=>0));
于 2013-01-18T09:19:52.523 回答
2

试试这个-

$id = $this->db->insert_id();
$w = $this->db->query("UPDATE bet_type_default SET current = 0 WHERE id <> $id");
于 2013-01-18T09:29:38.943 回答