在phpmyadmin中查询成功,但在php中查询失败
我想询问有关选择表中可以匹配特定条件的最后一条记录的查询 以下代码可以成功执行,并在phpmyadmin中给出正确的记录在phpmyadmin中查询成功,但在php中查询失败,php,mysql,phpmyadmin,Php,Mysql,Phpmyadmin,我想询问有关选择表中可以匹配特定条件的最后一条记录的查询 以下代码可以成功执行,并在phpmyadmin中给出正确的记录 SELECT TYPE FROM log WHERE TechID=4 ORDER By LogTime DESC LIMIT 1 然而,当我在php文件中形成查询并执行时,它给出了错误 $query2 = "SELECT Type FROM Log WHERE TechID=".$row1['TechID']."ORDER BY LogTime DESC LIMIT 1"
SELECT TYPE FROM log WHERE TechID=4 ORDER By LogTime DESC LIMIT 1
然而,当我在php文件中形成查询并执行时,它给出了错误
$query2 = "SELECT Type FROM Log WHERE TechID=".$row1['TechID']."ORDER BY LogTime DESC LIMIT 1"
以下是错误消息:
错误!您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以了解第1行“BY LogTime DESC LIMIT 1”附近使用的正确语法
谁能告诉我发生了什么,我的查询应该和我在phpmyadmin中使用的查询相同
SELECT TYPE FROM log WHERE TechID=4 ORDER By LogTime DESC LIMIT 1
下面是我为测试文件而创建的示例记录
LogID TechID ClientID SiteID Type LogTime
1 2 5 1 Checkin 2012/07/04 09:00
2 4 5 1 Checkin 2012/07/04 09:00
3 2 5 1 Checkout 2012/07/04 10:00
我会在order语句前加一个空格
" ORDER"
我会在order语句前加一个空格
" ORDER"
另一件事可能是个问题(虽然这里没有):在PHP中字符串必须用双引号转义,而不是单引号(请不要问我为什么)。因此, 将是虚假的,并且
mysqli_query("select * from tabel where name = \"peter\"");
或
将成功。另一件可能会出现问题的事情(虽然这里没有):字符串必须在PHP中用双引号转义,而不是单引号转义(请不要问我为什么)。因此, 将是虚假的,并且
mysqli_query("select * from tabel where name = \"peter\"");
或
将成功。有一种叫做格式化的方法。请用那个!:)请更新
die($query2)的输出代码>你的意思是我应该键入die($query2)并尝试输出某个内容?好的,留下它。:)你有问题了!:)有一种叫做格式化的东西。请用那个!:)请更新die($query2)的输出代码>你的意思是我应该键入die($query2)并尝试输出某个内容?好的,留下它。:)你有问题了!:)