mysql中的select命令不返回任何行

时间:2013-07-03 02:51:13

标签: php mysql

我使用命令

创建了一个数据库
CREATE TABLE login_table2(user_name VARCHAR(32), first_name VARCHAR(32), 
last_name VARCHAR(32), password VARCHAR(64));

然后我使用命令

插入数据
INSERT INTO login_table2(user_name ,first_name , last_name , password ) 
VALUES('ramya', 'ramya', 'muthu', 'India');

数据已插入表中。 然后我使用命令

插入另一组数据
 INSERT INTO login_table2(user_name ,first_name , last_name , password ) 
    VALUES('jeyshree', 'jey', 'shree', 'India');

数据也被插入到表中。 然后我给了命令

SELECT first_name FROM login_table2;

该命令显示表中的所有first_ name。 但是当我发出命令时

 SELECT password FROM login_table2 WHERE user_name = 'ramya';

虽然表格中存在条目,但它没有取任何内容。我会出错。给你回复。

6 个答案:

答案 0 :(得分:5)

尝试使用

  SELECT databasename.first_name FROM login_table2;

或全部使用

  SELECT * FROM login_table2;

[*]应该有效

答案 1 :(得分:5)

您使用的代码对我来说很好

尝试在查询结尾使用它

 or die (mysql_error());

查看查询中的错误


例如

$query = mysql_query("SELECT password FROM login_table2 WHERE user_name = 'ramya'"); or die  (mysql_error());

并在查询表后使用了

 mysql_fetch_object($query);

答案 2 :(得分:2)

password是MySQL中的关键字。您无法在SQL查询中直接使用它。

尝试使用撇号转义它:

SELECT `password` FROM login_table2 WHERE user_name like 'ramya';

答案 3 :(得分:2)

你必须使用backtik来获取密码。

  

SELECT password FROM login_table2 WHERE user_name ='ramya';

请参阅:http://dev.mysql.com/doc/refman/5.0/en/create-user.html

答案 4 :(得分:1)

这实际上适合我。 Here is the SQLfiddle that I created.我建议的一件事是你可能想要使用“WHERE user_name like'ramya'”。

答案 5 :(得分:1)

试试这个

SELECT password FROM login_table2 WHERE user_name like 'ramya';