1. 简介
PHP作为一种广泛应用于Web后端的语言,常常需要与数据库进行协作来获取和存储数据。而MSSQL则是一种流行的关系型数据库,因此在开发Web应用中,PHP与MSSQL的连接是非常常见的情况。本文将提供一个快速无缝连接配置的指南,以帮助开发者轻松实现基于PHP和MSSQL的数据协作。
2. PHP连接MSSQL数据库
2.1 安装SQL Server驱动程序
如果您还没有安装SQL Server驱动程序,那么第一步是到官网下载并安装合适版本的驱动程序。这里我们以SQL Server 2017为例:
sudo pecl install sqlsrv-5.2.0
sudo pecl install pdo_sqlsrv-5.2.0
2.2 在PHP中启用扩展
安装完驱动程序以后,我们需要找到php.ini文件,并将以下两行代码添加到该文件中:
extension=php_sqlsrv_72_ts.dll
extension=php_pdo_sqlsrv_72_ts.dll
注意,这里的72是指你的PHP版本号。
2.3 连接数据库
现在,我们可以通过以下代码连接到MSSQL数据库:
$serverName = "localhost\SQLEXPRESS";
$connectionOptions = array("Database" => "testdb");
$conn = sqlsrv_connect($serverName, $connectionOptions);
if($conn) {
echo "Connection established.
";
} else{
echo "Connection could not be established.
";
die(print_r(sqlsrv_errors(), true));
}
这里使用了sqlsrv_connect函数来建立数据库连接。如果连接成功,该函数将返回一个连接资源。否则,将返回false。
3. 数据库操作
3.1 执行SQL查询
对于大多数应用场景,我们需要执行SQL查询以从数据库中检索数据。以下示例演示如何执行SQL查询并输出结果:
$sql = "SELECT Id, Name, Age from Persons";
$stmt = sqlsrv_query($conn, $sql);
if ($stmt === false) {
die(print_r(sqlsrv_errors(), true));
}
while ($row = sqlsrv_fetch_array($stmt)) {
echo "Id: ".$row['Id']."
";
echo "Name: ".$row['Name']."
";
echo "Age: ".$row['Age']."
";
}
在这个例子中,我们查询了Persons表中的Id、Name和Age列,并将结果输出到屏幕。
3.2 插入数据
要向数据库中插入数据,可以使用以下代码:
$sql = "INSERT INTO Persons (Name, Age) VALUES (?, ?)";
$params = array("John Doe", 42);
$stmt = sqlsrv_query($conn, $sql, $params);
if( $stmt === false ) {
die( print_r( sqlsrv_errors(), true));
} else {
echo "Data inserted successfully.
";
}
3.3 更新数据
要更新数据库中的数据,可以使用以下代码:
$sql = "UPDATE Persons SET Age = ? WHERE Id = ?";
$params = array(43, 1);
$stmt = sqlsrv_query($conn, $sql, $params);
if( $stmt === false ) {
die( print_r( sqlsrv_errors(), true));
} else {
echo "Data updated successfully.
";
}
3.4 删除数据
要从数据库中删除数据,可以使用以下代码:
$sql = "DELETE FROM Persons WHERE Id = ?";
$params = array(1);
$stmt = sqlsrv_query($conn, $sql, $params);
if( $stmt === false ) {
die( print_r( sqlsrv_errors(), true));
} else {
echo "Data deleted successfully.
";
}
4. 结论
通过本文介绍的步骤,开发者们可以很轻松地实现基于PHP和MSSQL数据库的数据交互。从连接到数据库、执行查询和插入、更新和删除数据,本文提供了一个全面的指南,以帮助读者轻松理解并有效开发。