Home > Backend Development > PHP Tutorial > PHP 利用PDO操作SQlite 无法执行 WHERE IN () 请各位指教~

PHP 利用PDO操作SQlite 无法执行 WHERE IN () 请各位指教~

WBOY
Release: 2016-06-23 14:22:04
Original
1028 people have browsed it

本帖最后由 dlebh 于 2013-09-17 14:28:12 编辑

php + sqlite

字段 titles 是索引!

$sql = "select * from fang where titles in('kill')";$result = $dbh->query($sql);$r = $result->fetchAll();
Copy after login


返回错误: Fatal error: Call to a member function fetchAll() on a non-object in


语句没有错误 可以正常执行 但是在php里面就无法运行了。

是什么原因呢 请各位指教 谢谢了


回复讨论(解决方案)

哪位大牛能指点一二啊 。。。。

支持的!可能你哪里写错了
print_r($dbh->errorInfo());
看看有什么问题

哦 好的 我试下

Array ( [0] => HY000 [1] => 1 [2] => no such column: titles )

出的这个错误

支持的!可能你哪里写错了
print_r($dbh->errorInfo());
看看有什么问题

Array ( [0] => HY000 [1] => 1 [2] => no such column: titles )

出的这个错误

no such column: titles
没有这样的列:titles

应该是你写错了,机器不会骗你的

$a = $dbh->query('SELECT * FROM sqlite_master');print_r($a->fetchall(PDO::FETCH_ASSOC));
Copy after login
Copy after login
Copy after login
对比一下 sql 列

no such column: titles
没有这样的列:titles

应该是你写错了,机器不会骗你的

$a = $dbh->query('SELECT * FROM sqlite_master');print_r($a->fetchall(PDO::FETCH_ASSOC));
Copy after login
Copy after login
Copy after login
对比一下 sql 列

Fatal error: Call to a member function fetchall() on a non-object

还是爆这个错误 。。

我的那个sql语句没问题的 在sqlite里面可以执行 显示结果
就是到这个pdo里面 就完蛋啦 是不是pdo不支持索引列呢 ?


no such column: titles
没有这样的列:titles

应该是你写错了,机器不会骗你的

$a = $dbh->query('SELECT * FROM sqlite_master');print_r($a->fetchall(PDO::FETCH_ASSOC));
Copy after login
Copy after login
Copy after login
对比一下 sql 列

Fatal error: Call to a member function fetchall() on a non-object

还是爆这个错误 。。

我的那个sql语句没问题的 在sqlite里面可以执行 显示结果 
就是到这个pdo里面 就完蛋啦  是不是pdo不支持索引列呢 ?


不好意思 刚才搞错了 输出里面确实没有 titles这个列 

但是我建表的时候确实有这个索引列啊 而且我在sqlite里面查询也是没问题的 

为啥到这里就没了呢 

刚开始用sqlite 可能有些误区? 

SELECT * FROM sqlite_master
也不支持?你难道是 sqlite 2 ?

SELECT * FROM sqlite_master
也不支持?你难道是 sqlite 2 ?




多谢版主 原因找到了 ,原来困扰我两天的问题是我的数据库地址错了

我建了两个库 一个少了一个字段 这两天我一直用的这个错误的数据库地址。。。。。

哈哈 太苦逼了  这次 

多谢版主 十分感谢您的热心回答哈 

谢过了 在这里 ~

$sth = $db->query($sql);
$row = $sth->fetchAll();



多谢各位的热心了 谢谢 哈哈哈哈 

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template