请先安装MSSQL扩展,开启新技术之门

1. 安装MSSQL扩展

要开启新技术之门,我们首先需要安装MSSQL扩展。MSSQL是一种关系型数据库管理系统,能够运行在Windows和Linux环境下,并支持多种编程语言。MSSQL扩展可以让PHP程序与MSSQL数据库进行交互。

下面是安装MSSQL扩展的步骤:

1.1 下载MSSQL扩展

我们可以从Microsoft的GitHub仓库中下载最新的MSSQL扩展包。

curl https://github.com/microsoft/msphpsql/releases/download/v5.9.0/linux.zip -o linux.zip

unzip linux.zip

1.2 安装MSSQL扩展

使用以下命令进行安装:

cd ./sqlsrv-5.9.0/ext

phpize

./configure --with-php-config=/usr/bin/php-config

make

sudo make install

安装成功后,我们需要在php.ini文件中启用该扩展。

extension=sqlsrv.so

extension=pdo_sqlsrv.so

2. 连接MSSQL数据库

安装了MSSQL扩展后,我们可以使用PHP代码连接MSSQL数据库了。下面介绍几种常见的连接方式。

2.1 使用sqlsrv连接

使用sqlsrv连接,需要先建立一个连接对象,然后通过该对象执行SQL语句。以下是一个连接示例:

$serverName = "localhost";

$connectionOptions = array(

"Database" => "testDB",

"Uid" => "username",

"PWD" => "password"

);

$conn = sqlsrv_connect($serverName, $connectionOptions);

if($conn) {

echo "Connected successfully.";

} else {

echo "Connection failed.";

}

在上面的示例中,我们首先定义了一个$serverName变量,它指明了要连接的MSSQL数据库的服务器名称。$connectionOptions变量指定了要连接的数据库的名称、用户名和密码。我们使用sqlsrv_connect函数建立连接,如果连接成功,则输出"Connected successfully.",否则输出"Connection failed."。

2.2 使用PDO连接

使用PDO连接,我们需要先创建一个PDO对象,然后使用该对象执行SQL语句。以下是一个连接示例:

$serverName = "localhost";

$database = "testDB";

$username = "username";

$password = "password";

try {

$conn = new PDO( "sqlsrv:Server=$serverName;Database=$database", $username, $password);

$conn->setAttribute( PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION );

echo "Connected successfully.";

}

catch(Exception $e) {

echo "Connection failed: " . $e->getMessage();

}

在上面的示例中,我们首先定义了一个$serverName变量,它指明了要连接的MSSQL数据库的服务器名称。$database、$username和$password变量分别指定了要连接的数据库的名称、用户名和密码。我们使用PDO构造函数建立连接,并设置错误处理模式为ERRMODE_EXCEPTION。如果连接成功,则输出"Connected successfully.",否则输出错误信息。

3. 执行SQL语句

连接成功后,我们可以执行SQL语句操作MSSQL数据库。以下是PHP使用MSSQL的一些常用SQL语句。

3.1 查询语句

查询语句用于从数据库中检索数据。它可以使用SELECT语句来查询数据。以下是一个查询示例:

$sql = "SELECT * FROM users";

$result = sqlsrv_query($conn, $sql);

if($result === false) {

die(print_r(sqlsrv_errors(), true));

}

while($row = sqlsrv_fetch_array($result, SQLSRV_FETCH_ASSOC)) {

echo "id: ".$row["id"].", name: ".$row["name"].", email: ".$row["email"]."
";

}

在上面的示例中,我们使用sqlsrv_query函数执行了一个SELECT语句,将查询结果存储在$result变量中。如果查询失败,则使用sqlsrv_errors函数打印错误信息。最后,我们使用sqlsrv_fetch_array函数解析查询结果。

3.2 插入语句

插入语句用于将数据插入到MSSQL数据库中。它可以使用INSERT INTO语句来插入数据。以下是一个插入示例:

$sql = "INSERT INTO users (name, email) VALUES (?, ?)";

$params = array("John", "john@example.com");

$result = sqlsrv_query($conn, $sql, $params);

if($result === false) {

die(print_r(sqlsrv_errors(), true));

} else {

echo "Data inserted successfully.";

}

在上面的示例中,我们使用sqlsrv_query函数执行了一个INSERT INTO语句,将数据存储在MSSQL数据库的users表中。我们使用$params变量将待插入数据作为参数传递给sqlsrv_query函数。如果插入失败,则使用sqlsrv_errors函数打印错误信息。

3.3 更新语句

更新语句用于将数据库中的数据更新。它可以使用UPDATE语句来更新数据。以下是一个更新示例:

$sql = "UPDATE users SET email=? WHERE id=?";

$params = array("john@example.com", 1);

$result = sqlsrv_query($conn, $sql, $params);

if($result === false) {

die(print_r(sqlsrv_errors(), true));

} else {

echo "Data updated successfully.";

}

在上面的示例中,我们使用sqlsrv_query函数执行了一个UPDATE语句,将id为1的用户的邮箱地址更新为"john@example.com"。我们使用$params变量将待更新的数据作为参数传递给sqlsrv_query函数。如果更新失败,则使用sqlsrv_errors函数打印错误信息。

3.4 删除语句

删除语句用于从数据库中删除数据。它可以使用DELETE语句来删除数据。以下是一个删除示例:

$sql = "DELETE FROM users WHERE id=?";

$params = array(1);

$result = sqlsrv_query($conn, $sql, $params);

if($result === false) {

die(print_r(sqlsrv_errors(), true));

} else {

echo "Data deleted successfully.";

}

在上面的示例中,我们使用sqlsrv_query函数执行了一个DELETE语句,将id为1的用户从MSSQL数据库的users表中删除。我们使用$params变量将待删除数据作为参数传递给sqlsrv_query函数。如果删除失败,则使用sqlsrv_errors函数打印错误信息。

总结

通过本文,我们了解了如何安装MSSQL扩展、使用PHP连接MSSQL数据库,以及使用PHP执行查询、插入、更新和删除等操作。MSSQL是一款功能强大的数据库管理系统,学习MSSQL数据库的使用有助于提高我们的开发能力和工作效率。

数据库标签