时间:2021-05-26
本文实例讲述了PHP连接MSSQL2008/2005数据库(SQLSRV)配置方法,分享给大家供大家参考。具体方法如下:
PHP连接MSSQL2008/2005数据库与以往的连接mssql2000是不一样的,连接mssql2008/2005是需要自己添加PHP对MSSQL连接的驱动扩展了,而我们常用的hp.ini中的extension=php_mssql.dll扩展只适用连接于MSSQL2000,下面我们就来看看对此的解决办法
1.下载扩展
(1)去官方下载一个SQL Server Driver for PHP的扩展包,我是在这里下载的http:///en-us/download/details.aspx?id=20098【记得下载后好像是要先安装然后再解压】
(2)您也可以直接从本站下载(我之前下载的,来源于microsoft官方)【点击此处直接下载】
将下载下来的rar文件解压后你就会得到一堆的.dll文件
下载驱动程序,下载后安装释放程序,里面有以下文件:
php_pdo_sqlsrv_52_nts.dll
php_pdo_sqlsrv_52_ts.dll
php_pdo_sqlsrv_53_nts_vc6.dll
php_pdo_sqlsrv_53_nts_vc9.dll
php_pdo_sqlsrv_53_ts_vc6.dll
php_pdo_sqlsrv_53_ts_vc9.dll
php_sqlsrv_52_nts.dll
php_sqlsrv_52_ts.dll
php_sqlsrv_53_nts_vc6.dll
php_sqlsrv_53_nts_vc9.dll
php_sqlsrv_53_ts_vc6.dll
php_sqlsrv_53_ts_vc9.dll
SQLServerDriverForPHP.chm(手册,英文够好的话,可以看看,嘿嘿)
SQLServerDriverForPHP_License.rtf
SQLServerDriverForPHP_Readme.htm(自述文件)
2.添加扩展
根据(vc6/vc9)需要选择扩展,我的环境是WAMP(php5.2.6/apache2.2.8),我选用的是php_sqlsrv_52_ts_vc6.dll,php_pdo_sqlsrv_52_ts_vc6.dll这两个文件,复制到wamp安装目录下的ext目录下,我的ext目录是在wamp/bin/php/php5.2.6/ext/
3.配置php.ini
(1)在php.ini的Dynamic Extensions中添加如下两条扩展:
extension=php_sqlsrv_52_ts_vc6.dll
extension=php_pdo_sqlsrv_52_ts_vc6.dll
(2)将;extension=php_pdo.dll前面的;去掉,开启pdo连接扩展
(3)重新启动apache
4.连接数据库(pdo连接)
复制代码 代码如下:<?php
$servern="SFKFK27EL8FJ\SQLTRY";
$coninfo=array("Database"=>"try2","UID"=>"sa","PWD"=>"123");
$conn=sqlsrv_connect($servern,$coninfo) or die ("连接失败!");
$val=sqlsrv_query($conn,"select * from usertable");
while($row=sqlsrv_fetch_array($val)){
echo $row[1]."<br />";
}
sqlsrv_close($conn);
?>
5.例子
链接示例:
mssql_lib.php文件如下:
复制代码 代码如下:<?php
class DB {
var $con = null;
function __construct($dbhost,$dbuser,$dbpass,$dbname) {
$connectionInfo = array("UID"=>$dbuser,"PWD"=>$dbpass,"Database"=>$dbname);
$this->con = sqlsrv_connect($dbhost,$connectionInfo);
}
function query($sql){
$result = sqlsrv_query($this->con, $sql);
}
function getRow($sql){
$result = sqlsrv_query($this->con, $sql);
$arr = array();
while($row = sqlsrv_fetch_array($result))
{
$arr[] = $row;
}
return $arr[0];
}
function getAll($sql){
$result = sqlsrv_query($this->con, $sql);
$arr = array();
while($row = sqlsrv_fetch_array($result))
{
$arr[] = $row;
}
return $arr;
}
function __destruct() {
unset($con);
}
}
test.php页面如下:
复制代码 代码如下://简单调用
$db = new DB(DB_HOST, DB_USER, DB_PASS, DB_NAME);
$sql = "select * from crm_order_batch where (status=0 or status is null) and lock_id is not null ";
$orders_add_list = $db->getAll($sql);
希望本文所述对大家的PHP数据库程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了Python实现的连接mssql数据库操作。分享给大家供大家参考,具体如下:1.目标数据sql2008R2ComPrject=>TestModel
关于VS2008或VS2005中数据库配置字符串的三种取法VS2008建立Form程序时,如果添加数据源会在配置文件app.config中自动写入连接字符串,这
1.生成for2005版本的数据库脚本2008的mangerstudio--打开"对象资源管理器"(没有的话按F8),连接到你的实例--右键要转到2005的库-
本文实例讲述了php读取mssql的ntext字段返回值为空的解决方法。分享给大家供大家参考。具体分析如下:今天在使用php连接mssql数据库时发现ntext
刚装的sqlserver2005系统,附加数据库是出现如下提示C:\ProgramFiles\MicrosoftSQLServer\MSSQL.1\MSSQL\