下载后可任意编辑php 连接 mssql 两种方法(com & pdo) 分类: MSSQL 类 php 2024-11-13 11:31 1309 人阅读 评论(0) 收藏 举报phpextension 服务器数据库扩展 query一、使用 COM1、首先是准备工作:在 Windows 下通过 PHP 访问 MSSQL SERVER 2000,可以有两种方式,(1)利用 COM(2)一种是使用 MSSQL_系列函数 要使用这两种都需要在 php.ini 进行设定:(1)允许 DCOM,需要将 php.ini 中的 ;com.allow_dcom=TRUE 前的分号";"去掉。(2)使用 MSSQL 扩展,需要 php.ini 中的 ;extension=php_mssql.dll 前的分号";"去掉。(3)确认 extension_dir 为正确路径,以本机为例:extension_dir = "c:/AppServ/php5/ext"。 (4)假如仍然机器报错说找不到 c:/AppServ/php5/ext/php_mssql.dll 但明明存在这个文件。 解决方法:将 php_mssql.dll,ntwdblib.dll 拷贝到系统目录/system32 下重启测试。。 (注:上面两个 dll 文件不在相同目录下,我的为 c:/AppServ/php5/ext/php_mssql.dll;c:/AppServ/php5/ntwdblib.dll)另外设置好了后记得重启服务器哦。 我的 PHP 环境是用 AppServ 搭建的,我这样做了后,访问 MSSQL SERVER 一切正常。若你仍然有问题,请查阅 PHP 手册 php.ini 的设置。2、利用 COM 访问 MSSQL SERVER 的简单方法 $conn = new COM("ADODB.Connection") or die("Cannot start ADO"); //首先声明一个连接对象1下载后可任意编辑 $connstr = "Provider=SQLOLEDB; Persist Security Info=False; User ID=youruid; Password=yourpwd; Initial Catalog=yourdatabase; Data Source=127.0.0.1"; //设置连接字符串(很奇怪 Data Soure 为 localhost 或服务器名不行总是报错而为(local)或 127.0.0.1 却行,希望哪个高手帮我说明一下) $conn->Open($connstr); //建立数据库连接 $sqlstr = "select * from test"; //设置查询字符串 $rs = $conn->Execute($sqlstr); //执行查询获得结果 或者 //$rs = new com("adodb.recordset"); //声明一个数据集对象 //$rs->open($sqlstr,$conn);//,3,3); //获得数据集 rcordset 内容 $num_cols = $rs->Fields->Count(); //得到数据集列数 while (!$rs->EOF) //输出结果 { echo $rs->Fields['name']->Value."
"; // 'name'为字段名,需要明确制定 $rs->MoveNext(); 或者 //for ...