PHP7怎么连接sql server
更新时间:2023-11-081. 使用PDO类连接SQL Server
PDO是一个PHP扩展,提供了一个统一的接口访问不同的数据库,包括SQL Server。以下代码演示了如何使用PDO连接SQL Server,并查询一个表中的数据。
<?php
try {
$pdo = new PDO("sqlsrv:Server=myServerName;Database=myDataBase", "myUserName", "myPassword");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "SELECT * FROM myTable";
$stmt = $pdo->query($sql);
while ($row = $stmt->fetch()) {
echo $row['column1']." ".$row['column2']."<br/>";
}
}
catch(PDOException $e) {
echo "Connection failed: ".$e->getMessage();
}
?>
在以上代码中,我们使用了PDO的构造函数来创建一个与SQL Server的连接。注意,这里的DSN字符串中的“sqlsrv”代表了使用SQL Server驱动程序,而“myServerName”、“myDataBase”、“myUserName”和“myPassword”分别是你的SQL Server实例名、要连接的数据库名称、用户名和密码。
2. 使用SQLSRV扩展连接SQL Server
SQLSRV是一个PHP扩展,可以与SQL Server进行通信,是PHP 7.0及以上版本的建议用法。以下代码演示了如何使用SQLSRV扩展连接SQL Server,并查询一个表中的数据。
<?php
$serverName = "myServerName";
$connectionInfo = array( "Database"=>"myDatabase", "UID"=>"myUsername", "PWD"=>"myPassword" );
$conn = sqlsrv_connect( $serverName, $connectionInfo );
if( $conn ) {
$sql = "SELECT * FROM myTable";
$stmt = sqlsrv_query( $conn, $sql );
if( $stmt === false) {
echo "Error in SQL query: ";
die( print_r( sqlsrv_errors(), true) );
}
while( $row = sqlsrv_fetch_array( $stmt, SQLSRV_FETCH_ASSOC) ) {
echo $row['column1']." ".$row['column2']."<br/>";
}
sqlsrv_free_stmt( $stmt);
sqlsrv_close( $conn);
}
else{
echo "Connection could not be established.
";
die( print_r( sqlsrv_errors(), true));
}
?>
在以上代码中,我们使用了sqlsrv_connect函数来创建与SQL Server的连接。注意,这里的“myServerName”、“myDatabase”、“myUsername”和“myPassword”分别是你的SQL Server实例名、要连接的数据库名称、用户名和密码。
3. 使用ODBC扩展连接SQL Server
ODBC是一个通用的数据库访问接口,PHP可以使用ODBC扩展来访问SQL Server。以下代码演示了如何使用ODBC扩展连接SQL Server,并查询一个表中的数据。
<?php
$serverName = "myServerName";
$databaseName = "myDatabase";
$dsn = "Driver={SQL Server};Server=$serverName;Database=$databaseName;";
$user = "myUsername";
$password = "myPassword";
$conn = odbc_connect($dsn, $user, $password);
if ($conn) {
$sql = "SELECT * FROM myTable";
$rs = odbc_exec($conn, $sql);
if (!$rs) {
die("Error in SQL query: " . odbc_errormsg());
}
while ($row = odbc_fetch_array($rs)) {
echo $row['column1']." ".$row['column2']."<br/>";
}
odbc_free_result($rs);
odbc_close($conn);
}
else {
die("Connection failed: " . odbc_errormsg());
}
?>
在以上代码中,我们使用了odbc_connect函数来创建与SQL Server的连接。注意,这里的DSN字符串中包含了SQL Server驱动程序的名称“{SQL Server}”,和连接的服务器名和数据库名。
4. 使用mssql_connect函数连接SQL Server(已逐步推出)
这种连接方式已经逐步退出,PHP7.0及以上支持已经不包含此方法,在PHP5.3发行版本中已经标记为过时方法。以下代码演示了如何使用mssql_connect函数连接SQL Server,并查询一个表中的数据。
<?php
$serverName = "myServerName";
$user = "myUsername";
$password = "myPassword";
$conn = mssql_connect($serverName, $user, $password);
if ($conn) {
$databaseName = "myDatabase";
mssql_select_db($databaseName, $conn);
$sql = "SELECT * FROM myTable";
$rs = mssql_query($sql, $conn);
if (!$rs) {
die("Error in SQL query: " . mssql_get_last_message());
}
while ($row = mssql_fetch_array($rs, MSSQL_ASSOC)) {
echo $row['column1']." ".$row['column2']."<br/>";
}
mssql_free_result($rs);
mssql_close($conn);
}
else {
die("Connection failed: " . mssql_get_last_message());
}
?>
在以上代码中,我们使用了mssql_connect函数来创建与SQL Server的连接。注意,这里传递给该函数的三个参数分别是SQL Server实例名、用户名和密码。