当我在Firefox使用sqlite插件创建了一个sqlite3的数据库文件后,在CodeIgniter1.7.2中使用,得到一个错误,大意是文件不存在或者已经被加密。
google了搜了搜。才知道,原来CodeIgniter为了保持与php4的兼容性,未启用对pdo的支持。而sqlite3需要pdo。所以默认情况下只能使用sqlite2。
但是很遗憾的是,我寻遍了整个宇宙,没有找到一个合适的操作sqlite2的工具。命令行的也许有,却不是我需要的。最终找到一个外国友人的博客,地址是: http://blog.trevorbramble.com/past/2009/9/20/codeigniter_sqlite3/
这个哥们写了一套sqlite3的驱动(下载地址:http://blog.trevorbramble.com/files/ci_sqlite3_driver.zip)。使用方法是这样的。
将下载下来的压缩包中的sqlite3目录解压缩到codeigniter的system/database/drivers目录下,与原有的sqlite目录平行。
需要使用时,数据库驱动用sqlite3,如下
数据库设置需要加入“sqlite:”前缀,如下:
接下来就是正常的使用。
完成。