网站首页 > 基础教程 正文
1.什么是msSQL呢?
msSQL是指微软的SQLServer数据库服务器,它是一个数据库平台,提供数据库的从服务器到终端的完整的解决方案,其中数据库服务器部分,是一个数据库管理系统,用于建立、使用和维护数据库。SQL Server一开始并不是微软自己研发的产品,而是当时为了要和IBM竞争时,与Sybase合作所产生的,其最早的发展者是Sybase,同时微软也和Sybase合作过 SQL Server 4.2版本的研发,微软亦将SQL Server 4.2移植到Windows NT(当时为3.1版),在与Sybase终止合作关系后,自力开发出SQL Server 6.0版,往后的SQL Server即均由微软自行研发。
了解完mssql数据库之后,我们经常见到的是PHP+mysql数据库的组合,这个黄金搭档是公认的最佳组合,我们今天不说它了,今天来说说PHP+mssql吧,作为程序猿来讲,经常被各种需求轰炸,什么需求都有,今天正好在做小型项目时发现PHP需要与mssql数据库连接,第一感觉就是与mysql连接差不多,然后就下手开始了,但在我们的运行环境里面,很少有人去安装一些模块来支撑这个连接。下面我们一起来看看怎么连接的吧。
第一步:下载SQL Server驱动
首先来看看我们的sqlderver扩展是32位还是64位的,不是根据电脑的系统的位数判断的,而是根据php的位数判断的。如下图的红框所示查看,我们是64位的。
上面这图怎么查看,可通过下面代码
<?php
echo phpinfo();
?>
我这里用的php是PHP Version 7.3.4,要下载对应的扩展版本。
官方下载地下:https://docs.microsoft.com/en-us/sql/connect/php/download-drivers-php-sql-server?view=sql-server-2017
1.下载完毕解压出来把php_pdo_sqlsrv_73_nts_x64.dll和
php_sqlsrv_73_nts_x64.dll
放到D:\phpstudy_pro\Extensions\php\php7.3.4nts\ext(放在你安装PHP的ext目录下面)
2.设置php.ini,把这二个dll模块加进来。
extension=php_sqlsrv_7_nts_x86.dll
extension=php_pdo_sqlsrv_7_nts_x86.dll
如下图:
注意:PHP Version 7.3.4对应的版本是php_sqlsrv_7_nts_x86.dll和php_pdo_sqlsrv_7_nts_x86.dll
第二步:安装ODBC驱动11
驱动11支持所有版本,所以果断下载11版本:官方下载地下:https://www.microsoft.com/en-us/download/details.aspx?id=36434
下载成功直接安装就可以
注意:此时要重新启动apache.
第三步:写代码测试是否能成功
<?php
$server = "localhost"; //服务器名称
$uid = "xxx"; //数据库用户名
$pwd = "123456"; //数据库密码
$db = "test"; // 数据库名
$connectionInfo=array("UID"=>$uid,"PWD"=>$pwd,"Database"=>$db);
$conn =sqlsrv_connect($server,$connectionInfo);
if( $conn == false) {
echo "连接失败!";
die( var_dump( sqlsrv_errors(), true));
}else{
echo "成功连接";
}
如果显示“成功连接”,说明已经连接成功了,快去庆祝一下吧
- 上一篇: 「PHP」如何使用imap协议接收邮件
- 下一篇: PHP7开发API离不开签名验证,你是如何设计?
猜你喜欢
- 2024-11-23 西邮冯景瑜团队挖掘到CVE漏洞,被国家信息安全漏洞库收录公布
- 2024-11-23 PHP操作SQL数据库增删改查的代码
- 2024-11-23 简单轻量级的php的web防火墙,拦截SQL注入和XSS攻击
- 2024-11-23 PHP操作FTP类实现(上传、下载、移动、创建)的方法
- 2024-11-23 PHP7开发API离不开签名验证,你是如何设计?
- 2024-11-23 「PHP」如何使用imap协议接收邮件
- 2024-11-23 php 多进程是如何实现的?
- 2024-11-23 PHP自动加载学习记录
- 2024-11-23 PHP安全编码规范不可忽略
- 2024-11-23 PHP使用json_encode()处理数组时,不转义 中文和 反斜线 等字符串
- 最近发表
- 标签列表
-
- gitpush (61)
- pythonif (68)
- location.href (57)
- tail-f (57)
- pythonifelse (59)
- deletesql (62)
- c++模板 (62)
- css3动画 (57)
- c#event (59)
- linuxgzip (68)
- 字符串连接 (73)
- nginx配置文件详解 (61)
- html标签 (69)
- c++初始化列表 (64)
- exec命令 (59)
- canvasfilltext (58)
- mysqlinnodbmyisam区别 (63)
- arraylistadd (66)
- node教程 (59)
- console.table (62)
- c++time_t (58)
- phpcookie (58)
- mysqldatesub函数 (63)
- window10java环境变量设置 (66)
- c++虚函数和纯虚函数的区别 (66)