【问题标题】:Update PDO Driver for SQLite for php为 PHP 的 SQLite 更新 PDO 驱动程序
【发布时间】:2015-09-23 22:50:49
【问题描述】:

我有一个这样配置的服务器:

centos 6.4

PHP 5.4

SQLite 库 3.6.20(来自 phpinfo())

迫切地需要升级 sqlite 库。我需要从 php 访问一个 sqlite 库。似乎该数据库是使用 sqlite 3.7 创建的。当我尝试从 php 打开它时,我收到此错误“文件已加密或不是数据库”。更新该驱动程序将解决问题

使用命令 yum --enablerepo=remi install php-fpm 安装 PHP

我找到了一些类似 yum install php5-sqlite 的答案,看来这是一个旧命令。通常我会找到一些过时的答案。我需要一些东西来使用 php 5.4。用 pecl 安装也不行。

请帮忙

【问题讨论】:

    标签: php sqlite


    【解决方案1】:

    我从带有 SQLite 3.6 的 CentOS 6 机器读取使用 SQLite 3.8 (Fedora) 生成的 sqliteDB 没有问题

    php -r 'var_dump(
      $db=new sqlite3("/tmp/test.sqlite"),
      $q=$db->query("SELECT name FROM sqlite_master")); 
      foreach ($q->fetchArray() as $r) var_dump($r);'
    

    使用 PDO:

    php -r 'var_dump(
      $db=new PDO("sqlite:/tmp/test.sqlite"),
      $q=$db->query("SELECT * FROM sqlite_master"),
      $q->fetchAll()); '
    

    当然,您需要使用“sqlite3”或“pdo_sqlite”扩展,而不是旧的已弃用的“sqlite”。

    【讨论】:

      猜你喜欢
      • 2013-06-08
      • 2012-02-06
      • 2018-09-30
      • 2016-12-14
      • 1970-01-01
      • 1970-01-01
      • 2016-01-08
      • 1970-01-01
      相关资源
      最近更新 更多