用PHP调用数据库的存贮过程


Posted in PHP onOctober 09, 2006

昨天,看到一个战友问是否可以用php调用存贮过程,感觉应该是可以的,所以,马上进行了实验,非常的成功!非常出乎我的意料之外!因此,写出来,给大家参考!
大家知道,存储过程是在服务器端的一个脚本程序,执行起来速度很快,但它也有一个缺点,就是依赖与一个固定数据库,移植性不好!
我的上回文章,提到了用com组件是可以访问ado以及相关的组件,无论是自己建的还是系统带的,都可以扩展系统的功能,但现在php不支持dcom/com+,但相信它的下一个版本应该是支持的。
不说这么多了,我们马上试一下吧。 下面是我的一个简单的存贮过程
CREATE PROCEDURE [sp_mystoreprocedure] AS
select companyname, contactname, city from customers 其实,还可以写比较复杂的,可惜我对此研究不深,只好取简单了! 下面是我的php文件
<?
define ("OLEDB_CONNECTION_STRING",
"Provider=SQLOLEDB; Data Source=zzb; Initial Catalog=Northwind; User ID=sa; Password=");
$dbc = new COM("ADODB.Connection");
$dbc->Open(OLEDB_CONNECTION_STRING);
$command = "sp_mystoreprocedure";
$rs = $dbc->Execute($command); // Recordset
$i = 0; echo '<table cellSpacing="1" cellPadding="3" width="600" align="center" bgColor="#000000" border="0">
<tr vAlign="bottom" bgColor="#9999cc">
<th>Directive</th>
<th>Local Value</th>
<th>Master Value</th>
</tr>'; while (!$rs->EOF) {
$i += 1;
$fld0 = $rs->Fields(0);
$fld1 = $rs->Fields(1);
$fld2 = $rs->Fields(2);
print '<tr vAlign="baseline" bgColor="#cccccc">
<td bgColor="#ccccff"><b>';
print $fld0->value;
print '</b><br></td>
<td align="middle">';
print $fld1->value;
print '</td><td align="middle">';
print $fld2->value;
print '</td></tr>'; $rs->MoveNext();
}
print '</TABLE>'; $rs->Close();
?> 注意的是,你的服务器必须打开!另外,就是不能写错存贮过程的名称。否则会出项致命的错误,而且,你根本就不知道错误在那里,这就是php文件对错误处理的不好之处,但相信它以后是会改进的。 我学php需然有很长时间了,但发现要真正用好它,不那么容易,但它确实也超出了我的想象,有些东西真的很奇妙,真是,不用不知道,一用真奇妙!(出处:Viphot)

PHP 相关文章推荐
PHP伪静态写法附代码
Jun 20 PHP
php 图片加水印与上传图片加水印php类
May 12 PHP
PHP文件锁定写入实例解析
Jul 14 PHP
php数组合并与拆分实例分析
Jun 12 PHP
php实现的验证码文件类实例
Jun 18 PHP
php生成gif动画的方法
Nov 05 PHP
ThinkPHP中limit()使用方法详解
Apr 19 PHP
PHP实现支付宝即时到账功能
Dec 21 PHP
基于thinkPHP类的插入数据库操作功能示例
Jan 06 PHP
laravel中短信发送验证码的实现方法
Apr 25 PHP
PHP操作redis实现的分页列表,新增,删除功能封装类与用法示例
Aug 04 PHP
laravel接管Dingo-api和默认的错误处理方式
Oct 25 PHP
php实现ping
Oct 09 #PHP
PHP也可以?成Shell Script
Oct 09 #PHP
浅谈Windows下 PHP4.0与oracle 8的连接设置
Oct 09 #PHP
Oracle 常见问题解答
Oct 09 #PHP
第1次亲密接触PHP5(1)
Oct 09 #PHP
PHP 5昨天隆重推出--PHP 5/Zend Engine 2.0新特性
Oct 09 #PHP
文件上传类
Oct 09 #PHP
You might like
解析yii数据库的增删查改
2013/06/20 PHP
对淘宝URL中ID提取的PHP代码
2013/09/01 PHP
thinkphp在模型中自动完成session赋值示例代码
2014/09/09 PHP
Zend Framework动作助手Url用法详解
2016/03/05 PHP
通过源码解析Laravel的依赖注入
2018/01/22 PHP
PHP实现支持CURL字符串证书传输的方法
2019/03/23 PHP
jquery DOM操作 基于命令改变页面
2010/05/06 Javascript
node.js中watch机制详解
2014/11/17 Javascript
JavaScript 基本概念
2015/01/20 Javascript
JS组件Bootstrap Table使用方法详解
2016/02/02 Javascript
jQuery增加和删除表格项目及实现表格项目排序的方法
2016/05/30 Javascript
jQuery对table表格进行增删改查
2020/12/22 Javascript
jQuery、zepto、js常用小技巧
2017/02/12 Javascript
angular中使用Socket.io实例代码
2017/06/03 Javascript
JavaScript获取页面元素的常用方法详解
2019/09/28 Javascript
js获取本日、本周、本月的时间代码
2020/02/01 Javascript
Python中的包和模块实例
2014/11/22 Python
jupyter notebook读取/导出文件/图片实例
2020/04/16 Python
python中逻辑与或(and、or)和按位与或异或(&amp;、|、^)区别
2020/08/05 Python
Python存储读取HDF5文件代码解析
2020/11/25 Python
CSS3 clip-path 用法介绍详解
2018/03/01 HTML / CSS
CSS3新增布局之: flex详解
2020/06/18 HTML / CSS
Charlotte Tilbury美国官网:英国美妆品牌
2017/10/13 全球购物
美国宠物护理专家:Revival Animal Health
2020/01/05 全球购物
95%的面试官都会问到的50道Java线程题,附答案
2012/08/03 面试题
考试不及格检讨书
2014/01/09 职场文书
教师绩效考核方案
2014/01/21 职场文书
安全生产中长期规划实施方案
2014/02/21 职场文书
庆元旦活动总结
2014/07/09 职场文书
停车位租赁协议书
2014/09/24 职场文书
学习三严三实心得体会
2014/10/13 职场文书
专家推荐信怎么写
2015/03/25 职场文书
2015年党务公开工作总结
2015/05/19 职场文书
世界名著读书笔记
2015/06/25 职场文书
中学总务处工作总结
2015/08/12 职场文书
Python使用Opencv打开笔记本电脑摄像头报错解问题及解决
2022/06/21 Python