当前位置: 首页 > 编程笔记 >

php5.3不能连接mssql数据库的解决方法

孙昂然
2023-03-14
本文向大家介绍php5.3不能连接mssql数据库的解决方法,包括了php5.3不能连接mssql数据库的解决方法的使用技巧和注意事项,需要的朋友参考一下

本文实例讲述了php5.3不能连接mssql数据库的解决方法。分享给大家供大家参考。具体分析如下:

自从php5.3之后系统就不支持mssql_connect这个函数连接了,以前我也讲可以使用com接口来实现,现在我再介绍解决php5.3不能连接mssql数据库另一方法.

windows系统下,PHP5.3以上的版本已经不支持mssql扩展.

首先http://msdn.microsoft.com/en-us/sqlserver/ff657782.aspx 点击 get it 下载SQLSRV20.EXE。

将文件解压到php的扩展文件夹ext下,打开php.ini在结尾添加:

[PHP_PDO_SQLSRV] 

extension=php_pdo_sqlsrv_53_nts_vc6.dll 

[PHP_SQLSRV] 

extension=php_sqlsrv_53_nts_vc6.dll

保存后重启apache即可,附上简单的php连接的例子,代码如下:
<?php 

$serverName = "(127.0.0.1)"; 

$connectionInfo = array( "UID"=>"root", 

"PWD"=>"root2010", 

"Database"=>"master"); 

 

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

if( $conn ) 

{ 

echo "Connection established.n"; 

} 

else 

{ 

echo "Connection could not be established.n"; 

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

} 

?>

我使用的是wamp5.1集成安装包,在windows server 2008上面做的测试,php5.4以上版本测试没有成功.

如果使用这个扩展连接Sql server 2005以上版本的sql server(如sql server 2008),你还需要在机器上先安装 SQL Server Native Client :http://download.microsoft.com/download/0/E/6/0E67502A-22B4-4C47-92D3-0D223F117190/sqlncli.msi

这个扩展为php新增了一系列sqlsrv_开头的函数,函数参考如下:

sqlsrv_begin_transaction 

sqlsrv_cancel 

sqlsrv_client_info 

sqlsrv_close 

sqlsrv_commit 

sqlsrv_configure 

sqlsrv_connect 

sqlsrv_errors 

sqlsrv_execute 

sqlsrv_fetch 

sqlsrv_fetch_array 

sqlsrv_fetch_object 

sqlsrv_fetch_metadata 

sqlsrv_free_stmt 

sqlsrv_get_config 

sqlsrv_get_field 

sqlsrv_has_rows 

sqlsrv_next_result 

sqlsrv_num_fields 

sqlsrv_num_rows 

sqlsrv_prepare 

sqlsrv_query 

sqlsrv_rollback 

sqlsrv_rows_affected 

sqlsrv_send_stream_data 

sqlsrv_server_info

更多详细的说明可以在刚才的自解压的文件中有个 SQLServerDriverForPHP.chm 帮助文件中可以找到打开后点击API Reference节点.

另外看一种odb连接方式,代码如下:

$dbhost = ''; 

$dbuser = ''; //你的mssql用户名 

$dbpass = ''; //你的mssql密码 

$dbname = ''; //你的mssql库名 

$connect=odbc_connect("Driver={SQL Server};Server=$dbhost;Database=$dbname","$dbuser","$dbpass"); 

$sql="select * from content"; 

$exec=odbc_exec($connect,$sql); 

while($row = (odbc_fetch_array($exec))) 

{ 

$row['id']   //?取字段值 

… 

}

希望本文所述对大家的php程序设计有所帮助。

 类似资料:
  • 本文向大家介绍Python连接mssql数据库编码问题解决方法,包括了Python连接mssql数据库编码问题解决方法的使用技巧和注意事项,需要的朋友参考一下 python一直对中文支持的不好,最近老遇到编码问题,而且几乎没有通用的方案来解决这个问题,但是对常见的方法都试过之后,发现还是可以解决的,下面总结了常用的支持中文的编码问题(这些方法中可能其中一个就能解决问题,也可能是多个组合)。 (1)

  • 问题内容: 这是我简单的测试脚本。只是试图做一个基本的选择语句。在教程中找到了基本知识。 经过一个小时的搜索并尝试了一些解决方案,我比开始时就更接近解决问题了。希望我在某个地方犯了一个简单的错误,但我找不到它… 这是我遇到的错误 任何帮助将非常感激! 问题答案: 如果未在URL中指定,则该方言的默认驱动程序将为“ SQL Server” [1]。这意味着您需要在/etc/unixODBC/odbc

  • 本文向大家介绍ThinkPHP实现多数据库连接的解决方法,包括了ThinkPHP实现多数据库连接的解决方法的使用技巧和注意事项,需要的朋友参考一下 ThinkPHP实现连接多个数据的时候,如果数据库在同一个服务器里的话只需要这样定义模型: 然后就可以像D("Members");这样实例化模型,像普通模型那样操作了。 但后来发现他的数据库在两个不同的服务器,这样上面的方法就不行了。 这时候就需要使用

  • 本文向大家介绍Django数据库连接丢失问题的解决方法,包括了Django数据库连接丢失问题的解决方法的使用技巧和注意事项,需要的朋友参考一下 问题 在Django中使用mysql偶尔会出现数据库连接丢失的情况,错误通常有如下两种 OperationalError: (2006, 'MySQL server has gone away') OperationalError: (2013, 'Los

  • 本文向大家介绍php无法连接mysql数据库的正确解决方法,包括了php无法连接mysql数据库的正确解决方法的使用技巧和注意事项,需要的朋友参考一下 即使连接Mysql的语句正确,php也无法连接mysql数据库,出现如下图所示的结果: 首先是在Apache服务器的conf/httpd.conf下的任意位置都没有:PHPIniDir "php压缩目录"这一项。 如"C:/php-5.4.43-W

  • 本文向大家介绍gorm golang 并发连接数据库报错的解决方法,包括了gorm golang 并发连接数据库报错的解决方法的使用技巧和注意事项,需要的朋友参考一下 底层报错 error:cannot assign requested address 原因 并发场景下 client 频繁请求端口建立tcp连接导致端口被耗尽 解决方案 root执行即可 sysctl -w net.ipv4.tcp