如何连接到SQLite数据库与敏捷工具包4



我想使用SQLite3Agile Toolkit。我在文档中发现SQLite驱动程序包含在atk4中,但我找不到如何连接到SQLite DB.的任何示例

我试图使用Pear:DB DSN文档中的格式将atk4附带的示例应用程序的DB连接从MySql更改为SQLite:

$config['dsn']='sqlite:////var/www/webdev/atk4_example.db';

但是我一直得到无法找到驱动程序PDO错误:

Application Error: Database Connection Failed
BaseException, code: 0
Additional information:
    * PDO error: could not find driver
    * DSN: :host=;dbname=;charset=utf8
/var/www/webdev/atk4/lib/DB.php:94

SQLite PDO驱动程序似乎正确安装在服务器上。phpinfo()和PHP/PDO/SQLite3示例页面都确认它可以工作。

我正在学习敏捷工具包,PHP和一般的web开发,所以我可能会错过一些琐碎的东西。

您可以在config.php中尝试以下语法吗?

$config['dsn']='sqlite://username:password@hostname/dbname';

还请检查您是否在php.ini中启用了MySQL(是的,MySQL不是SQLite)扩展。如果没有,那么尝试启用它并再次测试。如果SQLite与启用MySQL扩展一起工作,那么我想我已经在DB.php中发现了一个小错误,并且可以修复它。

看起来你也可以将DSN参数以以下格式作为数组传递,这可能更好:

$config['dsn'] = array(
    'sqlite:host=hostname;dbname=dbname;charset=utf8',
    'username',
    'password'
);

请尝试上述两种解决方案,并让我知道他们是否有效。我现在不能自己测试因为我不在我的显影电脑上

最新更新