sqlite3 – 如何在symfony2项目上使用sqlite数据库?

在Symfony2项目中,您可以在app / config / parameters.ini文件中配置数据库连接.文档规定您可以使用sqlite3 PDO驱动程序.

但配置sqlite不能很好的工作:

[parameters]
    database_driver   = pdo_sqlite
    database_host     = localhost
    database_port     =
    database_name     = test_project.db
    database_user     = root
    database_password =

使用app / console doctrine:database:create,在项目根目录下成功创建一个test_project.db文件.

但在创建一些实体之后,运行app / console原则:schema:update –force应该在数据库文件上创建表,但是它不会,文件显示为空,O字节大小.

请注意,使用任何其他PDO驱动程序工作正常,但不与sqlite …

我还尝试在database_name参数中使用db文件的完整路径,但无济于事,数据库仍未被更新.

作为参考,这里是config.yml文件的doctrine dbal部分:

doctrine:
    dbal:
        driver:   %database_driver%
        host:     %database_host%
        port:     %database_port%
        dbname:   %database_name%
        user:     %database_user%
        password: %database_password%
        charset:  UTF8

有没有解决的办法?配置丢失? symfony2项目的正式文件没有说明什么?

根据 Doctrine,用于sqlite DBAL配置的元素有:

> user(string):连接数据库时要使用的用户名.
> password(string):连接数据库时要使用的密码.
> path(string):数据库文件文件系统路径.与记忆互斥路径优先.
> memory(boolean):如果sqlite数据库应该在内存(非持久性)中,则为true.与路径相互排斥路径优先.

尽管没有详细说明,这也在Symfony2的reference for Doctrine configuration全部列出.

所以你需要切换你的配置参数来匹配适合sqlite的内容.

相关文章

SQLite架构简单,又有Json计算能力,有时会承担Json文件/RES...
使用Python操作内置数据库SQLite以及MySQL数据库。
破解微信数据库密码,用python导出微信聊天记录
(Unity)SQLite 是一个软件库,实现了自给自足的、无服务器...
安卓开发,利用SQLite实现登陆注册功能