用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实现验证码功能
Oct 09 PHP
建站常用13种PHP开源CMS比较
Aug 23 PHP
测试php函数的方法
Nov 13 PHP
php操作mysql数据库的基本类代码
Feb 25 PHP
THINKPHP项目开发中的日志记录实例分析
Dec 01 PHP
php恢复数组的key为数字序列的方法
Apr 28 PHP
php脚本运行时的超时机制详解
Feb 17 PHP
php简单截取字符串代码示例
Oct 19 PHP
10个值得深思的PHP面试题
Nov 14 PHP
php查找字符串中第一个非0的位置截取
Feb 27 PHP
php过滤htmlspecialchars() 函数实现把预定义的字符转换为 HTML 实体用法分析
Jun 25 PHP
ThinkPHP5&amp;5.1实现验证码的生成、使用及点击刷新功能示例
Feb 07 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
如何对PHP程序中的常见漏洞进行攻击
2006/10/09 PHP
php4的彩蛋
2006/10/09 PHP
关于mysql 字段的那个点为是定界符
2007/01/15 PHP
ThinkPHP实例化模型的四种方法概述
2014/08/22 PHP
php中有关合并某一字段键值相同的数组合并的改进
2015/03/10 PHP
thinkPHP使用post方式查询时分页失效的解决方法
2015/12/09 PHP
PHP抓取淘宝商品的用户晒单评论+图片+搜索商品列表实例
2016/04/14 PHP
Zend Framework基于Command命令行建立ZF项目的方法
2017/02/18 PHP
基于jquery的一个拖拽到指定区域内的效果
2011/09/21 Javascript
js中substring和substr的详细介绍与用法
2013/08/29 Javascript
通过url查找a元素并点击
2014/04/09 Javascript
jQuery中scrollTop()方法用法实例
2015/01/16 Javascript
jQuery制作可自定义大小的拼图游戏
2015/03/30 Javascript
Vue.js第三天学习笔记(计算属性computed)
2016/12/01 Javascript
js addDqmForPP给标签内属性值加上双引号的函数
2016/12/24 Javascript
Angular.js 4.x中表单Template-Driven Forms详解
2017/04/25 Javascript
JS全角与半角转化实例(分享)
2017/07/04 Javascript
[03:36]2014DOTA2 TI小组赛综述 八强诞生进军钥匙球馆
2014/07/15 DOTA
[01:14:31]Secret vs VG 2018国际邀请赛淘汰赛BO3 第一场 8.23
2018/08/24 DOTA
[02:51]2018年度DOTA2最佳中单位选手-完美盛典
2018/12/17 DOTA
python3 pathlib库Path类方法总结
2019/12/26 Python
python 中的paramiko模块简介及安装过程
2020/02/29 Python
python 实现分组求和与分组累加求和代码
2020/05/18 Python
Pymysql实现往表中插入数据过程解析
2020/06/02 Python
关于HTML5语义标签的实践(blog页面)
2016/07/12 HTML / CSS
介绍一下JNDI的基本概念
2013/07/26 面试题
优秀应届生推荐信
2013/11/09 职场文书
大学系主任推荐信范文
2013/12/24 职场文书
护理专业学生职业生涯规划范文
2014/03/11 职场文书
五四青年节优秀演讲稿范文
2014/05/28 职场文书
售房委托书
2014/08/30 职场文书
毕业实习证明(4篇)
2014/10/28 职场文书
语文复习计划
2015/01/19 职场文书
如何使用Python对NetCDF数据做空间相关分析
2021/04/21 Python
Mysql数据库值的添加、修改、删除及清空操作实例
2021/06/20 MySQL
Python实现为PDF去除水印的示例代码
2022/04/03 Python