[英]Call to undefined method PDOStatement::numColumns()
我无法在$result
上运行numColumns()
方法。
我的代码:
try {
$db = new PDO('sqlite:temps.sqlite',null,null,array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
));
} catch (PDOException $e) {
print 'Exception : ' . $e->getMessage();
}
$result = $db->query("SELECT * FROM data LIMIT 30");
$fields = $result->numColumns();
错误是以下之一:
Uncaught Error: Call to undefined method PDOStatement::numColumns() in /*/export.php:7 Stack trace: #0 {main} thrown in /*/export.php on line 7
(第7行是最后一个)
为什么不起作用?
您正在尝试从不同的API执行功能。 您需要PDO
,但尝试从SQLite3Result
执行numColumns
。
在文档状态下 , PDO::query()
返回一个PDOStatement
对象,并且您的错误也将您指向该对象:
调用未定义的方法PDOStatement :: numColumns()
您需要改为执行columnCount
:
$result = $db->query("SELECT * FROM data LIMIT 30");
$fields = $result->columnCount();
或者,如果您希望使用SQLite3
,请初始化一个SQLite3
连接:
$db = new SQLite3('mysqlitedb.db');
$result = $db->query("SELECT * FROM data LIMIT 30");
$fields = $result->numColumns();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.