php 连接mssql数据库 初学php笔记


Posted in PHP onMarch 01, 2010
<?php 
$serverSite="."; 
$db="phpdemo"; 
$name="sa"; 
$pass="sa"; 
$conn=@mssql_connect($serverSite,$name,$pass) or die("数据库连接错误!"); 
@mssql_select_db("phpdemo",$conn); 
echo 'this can be use!'; 
$ok=@mssql_query("insert into test (name)values('ossem')",$conn); 
echo 'this database is :'.$conn; 
if($ok) 
{ 
echo "ok"; 
}else 
{ 
echo "false"; 
} 
?>

如果实现了PHP和MySQL链接了,PHP和MSSQL的链接其实很简单;
支持MSSQL的本地链接和远程链接,以本地链接为例:
机 器上安装了MS SQLServer 2005;
连接前配置系统:
1.检查文件 php5.2.5\ntwdblib.dll 默认下面有一个,不能连接再替换.
下载正确版本的 ntwdblib.dll (2000.80.194.0),地址: http://webzila.com/dll/1/ntwdblib.zip
2.配置php
a、打开php.in将 extension=php_mssql.dll的注释符号去掉。
b、打开php.in将mssql.secure_connection = Off改为on。
c、将php_mssql.dll拷贝到php.in中extension_dir 指定的目录或者系统system32目录下。(php_mssql.dll在php的压缩安装包中有)。
以上步骤完成后需要重启apache。
注意:实际使用中发现 如果通过php压缩文件手工安装php到iis下,必须重启机器而不仅仅是iis。
3.配置 sqlserver
a. 运行 SQL Server 配置管理器:SQL Server Configuration Manager,打开协议 Protocols
b. 允许命名管道 "named pipes" 和 "tcp/ip"
c. 右键点击 "tcp/ip",打开属性 Properties 标签 "IP addresses"
d. 在 TCP 动态端口 "TCP Dynamic Ports" 填入 1433
e. 重启 SQL Server

4.使用以下方式连接MS SQL Server 2005:
代码如下:

<?php 
//链接数据库 
$conn=mssql_connect('localhost','sa','123456'); 
mssql_select_db('gu_dde',$conn); 
//query语句 
$Query="select * from dde_top"; 
$AdminResult=mssql_query($Query); 
//输出结果 
$Num=mssql_num_rows($AdminResult); 
for($i=0;$i<$Num;$i++) 
{ 
$Row=mssql_fetch_array($AdminResult); 
echo($Row[1]); 
echo("<br/>"); 
} 
?>

可 以看到这些函数和MySQL的函数都是对应的使用起来很方便!

5.FAQ常见问题:
1报错:
Fatal error: Call to undefined function mssql_connect()
解决:
使用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)
另外设置好了后记得重启服务器哦。
6. 其他问题:
如果php apache Sql Server2000都在同一台机器上,访问基本没有问题了。
如果Sql Server2000和php机器是分离的,需要确认ping sqlserver所在机器的机器名能通,如过不通,修改php所在机器的\system32\drivers\etc下的hosts文件,增加一行 sqlserver所在机器的机器ip sqlserver所在机器的机器名字。
如果还是无法访问,需要确认php所在的机器有无暗转 mdac。要不索性安装一下sqlserver的客户端好了。

PHP 相关文章推荐
很实用的一个完整email发送程序
Oct 09 PHP
PHP 判断常量,变量和函数是否存在
Apr 26 PHP
PHP操作MongoDB GridFS 存储文件的详解
Jun 20 PHP
解析如何修改phpmyadmin中的默认登陆超时时间
Jun 25 PHP
测试php连接mysql是否成功的代码分享
Jan 24 PHP
php中url函数介绍及使用示例
Feb 13 PHP
php+xml实现在线英文词典之添加词条的方法
Jan 23 PHP
Symfony2在Nginx下的配置方法图文教程
Feb 04 PHP
php图片添加水印例子
Jul 20 PHP
PHP支付系统设计与典型案例分享
Aug 02 PHP
动态表单验证的操作方法和TP框架里面的ajax表单验证
Jul 19 PHP
PHP示例演示发送邮件给某个邮箱
Apr 03 PHP
discuz authcode 经典php加密解密函数解析
Jul 12 #PHP
php下使用SimpleXML 处理XML 文件
Feb 27 #PHP
PHP 导出数据到淘宝助手CSV的方法分享
Feb 27 #PHP
基于pear auth实现登录验证
Feb 26 #PHP
php str_pad() 将字符串填充成指定长度的字符串
Feb 23 #PHP
php 用checkbox一次性删除多条记录的方法
Feb 23 #PHP
PHP实现域名whois查询的代码(数据源万网、新网)
Feb 22 #PHP
You might like
动漫定律:眯眯眼都是怪物!这些角色狠话不多~
2020/03/03 日漫
php ajax 静态分页过程形式
2011/09/02 PHP
php调用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect读取数据的区别
2012/08/08 PHP
ThinkPHP模板替换与系统常量及应用实例教程
2014/08/22 PHP
ECSHOP完美解决Deprecated: preg_replace()报错的问题
2016/05/17 PHP
基于jQuery的js分页代码
2010/06/10 Javascript
关于setInterval、setTimeout在jQuery中的使用注意事项
2011/09/28 Javascript
js改变img标签的src属性在IE下没反应的解决方法
2013/07/23 Javascript
使用javascript做的一个随机点名程序
2014/02/13 Javascript
利用try-catch判断变量是已声明未声明还是未赋值
2014/03/12 Javascript
js动态控制table的tr、td增加及删除的具体实现
2014/04/30 Javascript
用js提交表单解决一个页面有多个提交按钮的问题
2014/09/01 Javascript
原生js和jQuery写的网页选项卡特效对比
2015/04/27 Javascript
AngularJS基础学习笔记之指令
2015/05/10 Javascript
javascript实现table表格隔行变色的方法
2015/05/13 Javascript
AngularJS的内置过滤器详解
2015/05/14 Javascript
jquery中val()方法是从最后一个选项往前读取的
2015/09/06 Javascript
利用JQuery写一个简单的异步分页插件
2016/03/07 Javascript
EasyUi中的Combogrid 实现分页和动态搜索远程数据
2016/04/01 Javascript
通用无限极下拉菜单的实现代码
2016/05/31 Javascript
require.js配合插件text.js实现最简单的单页应用程序
2016/07/12 Javascript
原生JS京东轮播图代码
2017/03/22 Javascript
JavaScript中递归实现的方法及其区别
2017/09/12 Javascript
详解vue-cli项目中的proxyTable跨域问题小结
2018/02/09 Javascript
Angular封装搜索框组件操作示例
2019/04/25 Javascript
Python最长公共子串算法实例
2015/03/07 Python
Python使用pandas对数据进行差分运算的方法
2018/12/22 Python
python将处理好的图像保存到指定目录下的方法
2019/01/10 Python
pycharm内无法import已安装的模块问题解决
2020/02/12 Python
Python标准库:内置函数max(iterable, *[, key, default])说明
2020/04/25 Python
在python image 中实现安装中文字体
2020/05/16 Python
Python字符串对齐、删除字符串不需要的内容以及格式化打印字符
2021/01/23 Python
美国珠宝网上商店:Jeulia
2016/09/01 全球购物
比驿:全球酒店比价网
2018/06/20 全球购物
物流合作计划书
2014/01/10 职场文书
泰山导游词
2015/02/02 职场文书