我正在将我的Web应用程序从MySQL迁移到SQLite数据库。我发现有两个用于与sqlite通信的PHP扩展: php_sqlite3.dll 和 php_pdo_sqlite.dll 。
什么扩展更好?或者另一个问题:这些扩展之间的基本区别是什么?
答案 0 :(得分:16)
PDO是PHP中数据库连接的包装器。它旨在涵盖大多数数据库管理系统(MySQL,PostgreSQL ...)提供的功能。因此,无论使用哪个DMBS,函数调用都是相同的。见http://php.net/manual/en/book.pdo.php。 php_pdo_sqlite.dll
允许您使用PDO接口访问SQLite数据库。
另一个库(php_sqlite3.dll
)是它自己的具有不同函数调用的接口。使用它的任何代码只能访问SQLite数据库。 http://php.net/manual/en/book.sqlite3.php
您可能会发现PDO与SQLite3的功能不完全匹配。也就是说,SQLite3可能提供PDO无法提供的功能,或者PDO具有无法执行任何操作的功能,因为SQLite3无法支持它们。
PDO的优势在于,如果您希望将来再次切换(您需要切换一次以便再次执行),那么您将不必更改太多代码。如果你保持你的SQL足够通用,你几乎只需要更改连接语句。