在我的项目中,我们使用了mysql。但现在客户想使用mssql。我搜索,我们使用 PDO 或 sqlsrv 类。但我无法决定哪个适合我们的项目或轻松更改此 Web 应用程序的结构?
我的代码示例
class sql {
public $oci;
public $rs;
public $temp;
public function __construct() {
$this->oci = new mysqli(DBHOST, DBUSER, DBPASS,DBNAME);
$this->oci->set_charset('utf8');
if (mysqli_connect_errno()) {
printf('Sql baglantı sorunu. Hata Kodu :' . mysqli_connect_errno());
exit();
}
}
public function closeOCI() {
$this->oci->close();
}
public function query($query) {
$this->rs = $this->oci->query($query);
}
并且登录类扩展了sql类
class login extends sql {
public function loginControl($user, $pass)
{
$dbHandle = new sql($dbhost, $dbUserName, $dbPassWord, $dbCntDBName);
//echo "SELECT level, name FROM users WHERE uName='$user' and pWord='$pass' limit 0,1";
$dbHandle->query("SELECT level, name FROM users WHERE uName='$user' and pWord='$pass' limit 0,1");
$result = $dbHandle->rs->fetch_assoc();
return $result;
}
}
我可以使用哪个驱动程序或轻松更改它们? 谢谢建议
最佳答案
这正是 PDO 等数据库抽象的用途。如果您需要支持多个数据库平台,您应该考虑使用这样的抽象。
或者,您可以构建自己的抽象,例如使用基于 mysql 或 mssql 的不同类,这些类实现公共(public)接口(interface)或从公共(public)父类继承。
关于php - 在 php 5.3 版本上将 mysql 类转换为 mssql 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23257361/