Row_Count()通过PDO在存储过程中不起作用

时间:2015-11-16 14:39:50

标签: php mysql pdo toad

如果我使用客户端连接到mySQL,例如toad并调用我的过程

我有一个存储过程,其中一部分代码是

UPDATE table Set ...
Where...;
Select Row_Count() Into insertCount;
Select Case insertCount When 0 Then 0 Else 1 End As success;

当我从Toad for MySQL调用这个程序时它运行得很好,当我从PDO调用它时,更新工作但成功总是返回0.即使我使用完全相同的调用,硬编码参数。

有人理解为什么会这样吗?

PHP代码:

    function getDBResults($sql, $params=array()) {
        global $dbConn;

        if ($dbConn==null) { // If there's no connection, do it local
            $bLocalConn = true;
            dbConnect(true);    
        } else {
            $bLocalConn = false;
        }

        if (!is_array($params)) {
            $params = array($params);
        }


        $stmt = $dbConn->prepare($sql);
        $stmt->execute($params);
        return $stmt->fetchAll();
        $dbConn->commit();

        if ($bLocalConn==true) { //Close connection if made locally
            dbConnect(false);   
        }
    }

即使没有绑定变量也能正常工作。

0 个答案:

没有答案