即使查询有效,mysql_query也会返回一个空结果集

时间:2010-02-25 04:31:00

标签: php mysql

当我在php脚本中执行以下代码时。结果集始终为空。但是,当我在mysql控制台或phpmyadmin中执行相同的查询时,它在结果集中正确显示了18行。这里可能出现什么问题。

$result_set = mysql_query("SELECT * FROM categories WHERE 1 ", $this->database_handle);

var_dump($this->database_handle);
var_dump($result_set);
var_dump(mysql_num_rows($result_set));

- 输出

resource(42) of type (mysql link)
resource(48) of type (mysql result) 
int(0) bool(false) 

但是,当我尝试将数据插入此表时,插入是完美无缺的。

正如之前的一些回复中所提到的,我已经尝试了多种组合,例如

$result_set = mysql_query("SELECT * FROM categories WHERE 1=1 ", $this->database_handle);
$result_set = mysql_query("SELECT * FROM categories", $this->database_handle);
$result_set = mysql_query("select category_id, name from `categories` where `name` like 'cat-1'", $this->database_handle);
$result_set = mysql_query("SELECT category_id,name FROM categories WHERE 1 ", $this->database_handle);

-

structure of table

Field            Type           Null    Default Comments
category_id  int(11)    No       
name             varchar(255)   No               

非常感谢任何帮助。

2 个答案:

答案 0 :(得分:0)

将您的查询更改为

"SELECT * FROM categories WHERE 1=1 "

答案 1 :(得分:0)

问题是因为我输入的查询字符串中有'\ n',因为我想将相同的字符串用于查询以及将其转储到屏幕上。

一旦我从字符串中删除\ n字符,它就开始正常工作。

有趣的是,在这种情况下,php mysql库表现得非常奇怪。没有警告或错误。

此致 尼丁