zjxhx 发表于 2017-7-14 20:43:02

php5.2 连接 SQL Server2008

  如果你见到下面这一段输出的话,那么你有福了!!!!



Array ( => Array (
=> IMSSP
=> IMSSP
=> -49
=> -49
=> This extension requires the Microsoft SQL Server 2012 Native Client. Access the following URL to download the Microsoft SQL Server 2012 Native Client ODBC driver for x86: http://go.microsoft.com/fwlink/?LinkId=163712
=> This extension requires the Microsoft SQL Server 2012 Native Client. Access the following URL to download the Microsoft SQL Server 2012 Native Client ODBC driver for x86: http://go.microsoft.com/fwlink/?LinkId=163712 )
=> Array (
=> IM002 => IM002 => 0 => 0 => 未发现数据源名称并且未指定默认驱动程序
=> 未发现数据源名称并且未指定默认驱动程序 ) )

  因为项目需要,不得不使用SQL Server数据库,之前从来没使用过,以前一直使的是MySQL。这些都不是关键,关键是我用的是php编程语言,还是比较高的5.3。刚开始不会用,甚至数据库都不会连,用什么SQL语句都不知道,于是啊,一顿百度!!!百度出N种方法,但是,没有一种成功过,比如装驱动,改php.ini配置文件……我就不断的尝试了近一周,才总算把数据库给连上了。但是最终用的是php5.2版本,不知道为什么5.3总是不成功,以后以机会再尝试,现在要忙项目了!!
  进入正题
  我电脑是win7系统+SQL Server2008+php5.2+apache2.4配置。
  1.首先安装数据库之后,用windows身份验证(默认登录方式,不需要密码)登录数据库。
  2.进入之后,选择对象资源管理器,打开之后,有一个安全性的选项,打开之后,有登录名这个选项,打开之后,会看到很多的登录。
  3.如果你现在想右键单击登录名来创建一个新的登录账号的话,那你就错了。
  虽然那样的话,你能创建一个用户,但是并不能使用(试过很多次,都不行)。
  好了,到这个时候,悬崖勒马吧!!!
  4.回到桌面,右键点击“我的电脑”,-->选择“系统工具”,-->选择“本地用户和组”,-->选择“用户”,-->右键点击“用户”,-->选择“新用户”,现在你可以设置一个用户和密码了。设置完后,取消“用户下次登录时须更改密码”,然后保存,退出。假设我创建的是Admin2,密码为123456
  接下来,返回第三步,现在你可以创建一个新的用户了。
  1.登录名-->(单击右键)-->新建登录名-->确定
  2.在常规一栏,点击搜索,在下方输入名称-->确定-->取消window身份验证,选择SQL Server身份验证-->取消登录密码过期和必须更改两个选项。然后选择下方的数据库和语言
  3.服务器角色一栏我现在并不懂,所以我选的是bulkadmin,dbcreate,processadmin,public。你自己看着办
  4.用户映射一栏,还有下面的安全对象和状态自己把握,根据需要选择。
  5.点击确定,此时,你已经成功创建一个用户,完成总进度的90%。
  接下来
  打开phpstudy或者wampserver,我用的是phpstudyX64 2014版,打开php扩展及设置-->php扩展,看到其中的php_sqlsvr和php_pdo_sqlsvr,开启他们俩。
  然后,打开php配置文件php.ini,删除extension=php_sqlsrv.dll和extension=php_pdo_sqlsrv.dll前面的分号(取消注释),然后保存,重启phpstudy即可。wampserver做法相似。
  然后就可以连接数据库了
  我使用的是sqlsvr_connect()连接,注意主机别写错,别以为全是localhost,当初我也是使用localhost,但就是不成功。
  代码如下



<?php
$serverName = "HOMEMIC-26JSJJD\SQLEXPRESS";
$connectionInfo = array( "Database"=>"test", "UID"=>"admin2", "PWD"=>"123456","Charset"=>"utf8");
$conn = sqlsrv_connect( $serverName, $connectionInfo);
if( $conn ) {
echo "Connection established.<br />";
}else{
echo "Connection could not be established.<br />";
die( print_r( sqlsrv_errors(), true));
}
?>

  good luck!
页: [1]
查看完整版本: php5.2 连接 SQL Server2008