95992828九五至尊2

php如何连接sql

三月 5th, 2019  |  882828九五至尊手机版

这二日有个php连接sql
server的品类,顺便学习学习sql server 
说明:
 1:PHP5.2.x自己有个php_mssql.dll的增添用来连接Sql
server,可是这些dll只是用来连接低版本 Sql
server的(2000以下版本),在Sql server
二零零七及以上版本不可能运用mssql_connect连接受数据库。
 2:php5.3.x不再扶助php_mssql.dll
拓展库了,及时选用php5.2.x中的php_mssql.dll也心慌意乱运用。
微软专门为PHP出了个SQL
Server的扩充(Windows版本的),对于Windows下行使php开发SQL
Server应用来说,那几个扩张有利于利用SQL Server来开发php平台连接sql
server数据库管理种类。
一 、php5.3以下的版本连接sql
server

5.3之下的本子扩展里面自带三个php_mssql.dll;接数据库的扩张,能够选拔这些增加链接数据库,(只限于链接低版本数据库)。
切切实实的步子如下:
1:首先安装sql
server,一流糟糕安装,笔者事先设置的是二零零六本子的,Windows过期后就不可能用了,然后重装还装不上,最终重装系统才装上
2:明确SQL装的时候用的是以次充好认证方式,或SQL验证方式,然后打开php的布局文件(php.ini),开启mssql扩充(extension=php_pdo_mssql.dll前边的分行去掉)并且必要把mssql.secure_connection
= On 重启后生效。
若果比较顺遂的话已经得以连接数据库了,假使连不上就须要持续低下的安插:
3:检查ntwdblib文件的版本(php/下边和Apache/上边)下载正确的版本的
ntwdblib.dll(3000.80.194.0)覆盖现有的DLL文件,(把ntwdblib.dll,php_mssql.dll
复制到system32目录中也足以)ntwdblib.dll
用于PHP连接MSSQL二零零五或二〇一〇的驱动文件。
4:测试连接:mssql_connect(‘localhost,1433’,
‘用户名’, ‘密码’);
二、php5.3+连接sql server
其实5.3以下的php版本早已很少用了,况且安全性和包容性都不好,所以高版本的php仍然比较常见的。实践注脚低版本的php连接数据库成功率相比较低(二零零五之上的本子大约不能够动用),推荐使用php5.3+
php使用微软专门的扩展 SQLS奥迪Q7V 来接二连三sqlserver数据库
手续如下:
1:先到微软式网球站下载 SQL Server Driver for PHP
https://www.microsoft.com/en-us/download/details.aspx?id=20098)是一个自解压的EXE文件,解压缩后你会得到这么几个文件:
882828九五至尊手机版 1
里面包车型客车5② 、53意味着便是php的5.2.x和5.3.x
版本,接纳跟你php版本相匹配的;vc6或vc9的挑选要看您使用的是怎么着web服务器软件,借使运用的是IIS那就分选vc9的,如若是Apache则选用vc6的,ts和nts的抉择要看你安装的php版本是线程安全版的依然非线程安全版,ts是线程安全,nts是非线程安全。
一经不清楚能够在phpinfo里看Zend Extension Build那一个本性如下图:

说明:   1:PHP5.2.x本身有个php_mssql.dll的增加用来连接Sql
server,可是那几个dll只是用来延续低版本 Sql
server的(三千以下版本),在Sql server
2006及以上版本无法运用mssql_connect连接受数据库。
  2:php5.3.x不再支持php_mssql.dll
拓展库了,及时利用php5.2.x中的php_mssql.dll也无从利用。
微软专门为PHP出了个SQL
Server的恢弘(Windows版本的),对于Windows下行使php开发SQL
Server应用来说,这些增添有利于利用SQL Server来开发php平台连接sql
server数据库管理种类。
882828九五至尊手机版,① 、php5.3以下的版本连接sql server 5.3以下的版本扩张里面自带多个php_mssql.dll;接数据库的增加,能够选用那一个扩张链接数据库,(只限于链接低版本数据库)。
具体的步骤如下:
1:首先安装sql
server,一级倒霉安装,小编事先设置的是二零零六本子的,Windows过期后就无法用了,然后重装还装不上,最后重装系统才装上
2:确定SQL装的时候用的是勾兑认证情势,或SQL验证形式,然后打开php的配置文件(php.ini),开启mssql扩充(extension=php_pdo_mssql.dll前面包车型客车分行去掉)并且供给把mssql.secure_connection
= On 重启后生效。
要是比较顺利的话已经得以连绵不断数据库了,假设连不上就须求继续低下的安插:
3: 检查ntwdblib文件的版本(php/上面和Apache/下边)下载正确的版本的
ntwdblib.dll(贰仟.80.194.0)覆盖现有的DLL文件,(把ntwdblib.dll,php_mssql.dll
复制到system32索引中也得以)ntwdblib.dll
用于PHP连接MSSQL二〇〇七或2010的驱动文件。
4:测试连接:mssql_connect(‘localhost,1433’, ‘用户名’, ‘密码’);
二、php5.3+连接sql server
实5.3之下的php版本早已很少用了,况且安全性和兼容性都不佳,所以高版本的php依然相比较宽泛的。实践注脚低版本的php连接数据库成功率相比较低
(2006以上的版本差不多不可能动用),推荐应用php5.3+ php使用微软特地的扩徐熙媛(Barbie Hsu)女士QLSRubiconV 来连接sqlserver数据库
手续如下:
1:先到微软网站下载 SQL Server Driver for PHP 是3个自解压的
EXE文件,解压缩后你会获得那样多少个文本:

882828九五至尊手机版 2

882828九五至尊手机版 3

2:将扩大拷贝到拷到php/ext目录下,在php.ini文件,添加一下代码:
extension=在ext下的pdo扩展(用于pdo)
extension=在ext下的扩充
3:重启服务器,打开phpinfo();看到以下情状就印证添加扩充成功,

当中的5贰 、53意味着正是php的5.2.x和5.3.x
版本,选择跟你php版本相匹配的;vc6或vc9的挑选要看您利用的是怎么web服务器软件,就算运用的是IIS那就分选vc9的,如若是Apache
则选取vc6的,ts和nts的抉择要看您安装的php版本是线程安全版的要么非线程安全版,ts是线程安全,nts是非线程安全。
尽管不精晓能够在phpinfo里看Zend Extension Build这么些天性如下图:

882828九五至尊手机版 4

882828九五至尊手机版 5

4:连接测试:

2:将扩展拷贝到拷到php/ext目录下,在php.ini文件,添加一下代码:
extension=在ext下的pdo扩展(用于pdo)
extension=在ext下的扩展
3:重启服务器,打开phpinfo();看到以下境况就表明添加扩张成功,

 1 <?php
 2     $serverName = "(local)";
 3     $connectionInfo =  array("UID"=>"sa","PWD"=>"admin","Database"=>"db_online");
 4     $conn = sqlsrv_connect( $serverName, $connectionInfo);
 5     if( $conn ){
 6          echo "Connection established.\n";
 7     }else{
 8          echo "Connection could not be established.\n";
 9          die( var_dump(sqlsrv_errors()));
10     }
11     sqlsrv_close( $conn);
12 ?>

882828九五至尊手机版 6

瞩目那里的连日不是用mssql_connect而是用sqlsrv_connect,在这些版本中,还有多少个函数:
本条扩张为php新增了一多种sqlsrv_千帆竞发的函数,常用的如下:

4:连接测试:

 1 sqlsrv_connect
 2 sqlsrv_close
 3 sqlsrv_commit
 4 sqlsrv_errors
 5 sqlsrv_fetch
 6 sqlsrv_fetch_array
 7 sqlsrv_fetch_metadata
 8 sqlsrv_num_rows
 9 sqlsrv_query
10 sqlsrv_rollback
11 sqlsrv_rows_affected
12 . . . 
<?php
  $serverName = "(local)";
  $connectionInfo = array("UID"=>"sa","PWD"=>"admin","Database"=>"db_online");
  $conn = sqlsrv_connect( $serverName, $connectionInfo);
  if( $conn ){
     echo "Connection established.\n";
  }else{
     echo "Connection could not be established.\n";
     die( var_dump(sqlsrv_errors()));
  }
  sqlsrv_close( $conn);
?>

详细消息能够参照:https://msdn.microsoft.com/zh-cn/library/cc296161%28v=SQL.90%29.aspx
开发文档

瞩目那里的总是还是不是用mssql_connect而是用sqlsrv_connect,在这些版本中,还有多少个函数:
以此扩展为php新增了一种类sqlsrv_始于的函数,常用的如下:

此外注意的是,倘诺利用这一个扩展连接Sql server 二零零七以及上述版本的sql
server(如sql server 二〇一〇),你还索要在机器上先安装 SQL Server Native
Client
要不会并发如下错误:

sqlsrv_connect
sqlsrv_close
sqlsrv_commit
sqlsrv_errors
sqlsrv_fetch
sqlsrv_fetch_array
sqlsrv_fetch_metadata
sqlsrv_num_rows
sqlsrv_query
sqlsrv_rollback
sqlsrv_rows_affected
. . .
除此以外注意的是,若是选拔这一个扩展连接Sql server 二零零七以及上述版本的sql
server(如sql server 二〇〇九),你还索要在机器上先安装 SQL Server Native
Client
再不会油但是生如下错误:

 1 array
 2 0 =>array
 3 0 =>string'IMSSP'(length=5)
 4     'SQLSTATE' =>string'IMSSP'(length=5)
 5 1 =>int-49
 6     'code' =>int-49
 7 2 =>string'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'(length=216)
 8 'message' =>string'This extension requires the Microsoft SQL Server 2008 Native Client. Access the following URL to download the Microsoft SQL Server 2008 Native Client ODBC driver for x86: http://go.microsoft.com/fwlink/?LinkId=163712'(length=216)
 9 1 =>array
10 0 =>string'IM002'(length=5)
11     'SQLSTATE' =>string'IM002'(length=5)
12 1 =>int0
13     'code' =>int0
14 2 =>string'[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序'(length=71)
15 'message' =>string'[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序'(length=71)
16 . . . .

array
0 =>array
0 =>string’IMSSP'(length=5)
    ‘SQLSTATE’ =>string’IMSSP'(length=5)
1 =>int-49
    ‘code’ =>int-49
2 =>string’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'(length=216)
‘message’ =>string’This extension requires the Microsoft SQL Server
2008 Native Client. Access the following URL to download the Microsoft
SQL Server 2008 Native Client ODBC driver for x86:
http://go.microsoft.com/fwlink/?LinkId=163712'(length=216)
1 =>array
0 =>string’IM002′(length=5)
    ‘SQLSTATE’ =>string’IM002′(length=5)
1 =>int0
    ‘code’ =>int0
2 =>string'[Microsoft][ODBC 驱动程序管理器]
未察觉数据源名称并且未钦点默许驱动程序'(length=71)
‘message’ =>string'[Microsoft][ODBC 驱动程序管理器]
未察觉数据源名称并且未内定默许驱动程序'(length=71)
. . . .

焚薮而田办法:供给设置SQL Server 2010 Native Client ODBC
Driver,下载安装文件sqlncli.msi
下载地址:http://download.microsoft.com/download/0/E/6/0E67502A-22B4-4C47-92D3-0D223F117190/sqlncli.msi
安装后就足以了。

解决情势:内需设置SQL Server
二〇〇八 Native Client ODBC
Driver,下载安装文件sqlncli.msi,安装后就能够了。

计算:到此整体完结,作者在协调的电脑上装了大半天,中间出现了各个错误,总体感觉微软的东西太不好用。不是无奈何人去用php链接sql
server,链接mysql不就得了。

上述正是php连接sql server的点子,希望对大家消除类似题材具有帮助。

连带安装链接:

你只怕感兴趣的文章:

sql server
卸载:http://www.jb51.net/article/37301.htm

sql server
安装:http://www.cnblogs.com/pvistely/archive/2008/12/31/1365702.html

sql
server安装:http://zhidao.baidu.com/link?url=6x87ogdDVZn65VB9220pplm_fXOlT01nA5HcPLb3CzY-t6q_Xd3wFJ9VQGqlcYlh0fEgpmsr41C6lxl18bJMfK

错误1:http://jingyan.baidu.com/article/03b2f78c4c7cad5ea237aec9.html

sql
server2005安装:http://wenku.baidu.com/link?url=XJv0doRJDNg-p1I3J3zpXu19Fx32SN9Wcl7nZpIaFewIozxDTCTAz_xs_-9vNF9KRxsBX6iS2WXpWYgzwYyfPeTbGU6GrmqBFFSZjD5Qfzq 

http://jingyan.baidu.com/article/4e5b3e19705db091901e24bb.html

相关文章

Your Comments

近期评论

    功能


    网站地图xml地图