【问题标题】:Quering integer in MySQL over PHP通过 PHP 在 MySQL 中查询整数
【发布时间】:2011-07-05 16:51:59
【问题描述】:

我正在使用一个包含“Aprovado”字段的表(“项目”),它是一个整数,用于检查项目是否被批准(1 表示是,0 表示否)(不是我的表,我会选择适当的布尔值)。

我知道那里有物品,并且我知道有很多物品的“Aprovado”设置为 1。(我成功查询“SELECT * FROM Item ORDER BY ItemID ASC”)

然而,当我这样做时:

mysql_select_db($theDatabase, $db) or die("Could not find database."); 
$query = "SELECT * FROM Item WHERE Aprovado = 1";
$resultID = mysql_query($query, $db) or die("Data not found."); 

它只返回“未找到数据”。怎么了?

【问题讨论】:

  • 我们需要的不仅仅是调试。此查询是否适用于 mysql 客户端?同时显示 $db
  • 能否在您的问题中显示SHOW CREATE TABLE Item 的输出?
  • 你确定有字段值为 Aprovado=1 的数据,并且它是一个整数。只需检查 Aprovado='1'
  • 使用 mysql_error() 检查任何错误。
  • 您是否在 PHP 之外尝试过相同的查询?

标签: php mysql xml integer


【解决方案1】:

可以尝试将 die(...) 更改为:

die('无效查询:' .mysql_error());

这将显示实际的 MySQL 错误。

【讨论】:

  • 感谢 +1 非常有用(我希望它会)现在就去做。
  • 标记为答案,因为这是让我找到问题的那段代码(它不在上面粘贴的代码上,它在另一点上......但是每个骰子都在返回“未找到数据”我不知道。)我从现在开始采用显示实际错误
【解决方案2】:

如果查询没有返回数据,mysql_query 不会返回 FALSE。它只在错误条件下返回 false:

$result = mysql_query($query, $db) or die(mysql_error());
if (mysql_num_rows($result) == 0) {
   die("Data not found");
}
$row = mysql_fetch_assoc($result);
$resultID = $row['resultID'];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多