有人能告诉我为什么我从这个过程中得到一个bool值吗?

时间:2010-01-06 15:54:43

标签: mysql

我在这台机器上有几个程序,这是我的PHP代码中唯一一个给我一个布尔值的查询(至少我认为它是一个布尔值)。当我用另一个程序替换这个程序时,这个值就消失了。这个代码有问题吗?

CREATE DEFINER=`root`@`%` PROCEDURE `phoneIsRegistered`
(IN iPhone bigint(10), OUT oPhone bigint(10))
BEGIN

        SELECT
          phone
        FROM
            user
        WHERE
            phone = iPhone
        INTO
            oPhone;
END;

这是我正在谈论的这个数组的数组。

mysqli_result Object
(
    [current_field] => 0
    [field_count] => 2
    [lengths] => 
    [num_rows] => 110
    [type] => 0
)
mysqli_result Object
(
    [current_field] => 0
    [field_count] => 1
    [lengths] => 
    [num_rows] => 12
    [type] => 0
)
1                    <-------------------------------------HERE
mysqli_result Object
(
    [current_field] => 0
    [field_count] => 1
    [lengths] => 
    [num_rows] => 1
    [type] => 0
)

1 个答案:

答案 0 :(得分:0)

首先是语法错误,因为你正在使用';'内部查询和创建过程。你需要“DELIMITER ='//';”在程序之前然后使用“END //”。但仍然使用';'在内部查询。

DELIMITER '//'
CREATE PROCEDURE...
  ..
END//
DELIMITER ';'