Sql错误:一般错误:25

时间:2018-03-30 17:39:03

标签: php sql sqlite pdo

$up = $this->db->prepare ("
        UPDATE ".self::DbUser." SET UserLogin=:UserLogin WHERE UserId=:UserId; 
        UPDATE ".self::DbUProfile." SET ProfileName=:ProfileName, ProfilePhone=:ProfilePhone WHERE ProfileUserId =:UserId");

$up->bindValue (':UserLogin', $UserLogin);
$up->bindValue (':ProfileName', $ProfileName);
$up->bindValue (':ProfilePhone', $ProfilePhone);
$up->bindValue (':UserId', $UserId);

if ( !$up->execute() )...

结果:一般错误:25个绑定或列索引超出范围

什么问题?谢谢!

1 个答案:

答案 0 :(得分:1)

documentation for execute说(通过this question找到):

  

input_parameters中的键必须与SQL中声明的键匹配。在PHP 5.2.0之前,这是默默无视的。

尝试将查询拆分为两个,并且每个execute仅指定使用的参数?