SQL查询从php vs直接SQL查询到数据库

时间:2014-10-30 19:24:11

标签: php sql

在SQL管理器(sqlite管理器)上执行以下查询,

   SELECT ip FROM objects WHERE name="machine4"

返回预期值,ip address ='aaaa :: c30c:0:0:4'。

从php代码执行相同的查询,如下所示,

  $db=open_database();
  $query = $db->exec('SELECT ip FROM objects WHERE name="machine4"');   
  echo $query;

返回值1。

有什么东西逃脱了我对php的认识吗?

p.s。:我确信查询是在没有错误的情况下执行的,并且它们访问引用同一元素的同一个数据库。

2 个答案:

答案 0 :(得分:2)

答案 1 :(得分:0)

解决,

首先我需要一个对象来获取值,为此目的,exec不返回一个对象,而是返回如上所述的行数。虽然来自php的query命令有一个要获取的对象。

这是应用于SQLITE3 db的查询的答案:

$db=open_database();
$query = $db->query('SELECT ip FROM objects WHERE name="machine4"');
if(!$query){
   echo $db->lastErrorMsg();
} else {
   $ip=$query->fetchArray(SQLITE3_ASSOC);
   return $ip['ip'];