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


Posted in PHP onOctober 09, 2006

用PHP调用数据库的存贮过程!
作者:fox4000

昨天,看到一个战友问是否可以用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需然有很长时间了,但发现要真正用好它,不那么容易,但它确实也超出了我的想象,有些东西真的很奇妙,真是,不用不知道,一用真奇妙!

PHP 相关文章推荐
桌面中心(一)创建数据库
Oct 09 PHP
php设计模式 Bridge (桥接模式)
Jun 26 PHP
深入for,while,foreach遍历时间比较的详解
Jun 08 PHP
destoon实现首页显示供应、企业、资讯条数的方法
Jul 15 PHP
php实现的DateDiff和DateAdd时间函数代码分享
Aug 16 PHP
smarty中js的调用方法示例
Oct 27 PHP
ThinkPHP 3.2 版本升级了哪些内容
Mar 05 PHP
php实现的验证码文件类实例
Jun 18 PHP
PHP获取某个月最大天数(最后一天)的方法
Jul 29 PHP
深入剖析浏览器退出之后php还会继续执行么
May 17 PHP
微信公众号模板消息群发php代码示例
Dec 29 PHP
php实现的生成排列算法示例
Jul 25 PHP
PHP脚本的10个技巧(2)
Oct 09 #PHP
PHP脚本的10个技巧(1)
Oct 09 #PHP
图书管理程序(三)
Oct 09 #PHP
一个从别的网站抓取信息的例子(域名查询)
Oct 09 #PHP
一个PHP+MSSQL分页的例子
Oct 09 #PHP
基于文本的留言簿
Oct 09 #PHP
图书管理程序(一)
Oct 09 #PHP
You might like
国外比较好的几个的Php开源建站平台小结
2010/04/22 PHP
PHP Warning: PHP Startup: Unable to load dynamic library \ D:/php5/ext/php_mysqli.dll\
2012/06/17 PHP
php导入excel文件到mysql数据库的方法
2015/01/14 PHP
php中简单的对称加密算法实现
2017/01/05 PHP
PHP 中使用explode()函数切割字符串为数组的示例
2017/05/06 PHP
表单JS弹出填写提示效果代码
2011/04/16 Javascript
Javascript改变CSS样式(局部和全局)
2013/12/18 Javascript
jquery创建表格(自动增加表格)代码分享
2013/12/25 Javascript
7个让JavaScript变得更好的注意事项
2015/01/28 Javascript
原生Js实现简易烟花爆炸效果的方法
2015/03/20 Javascript
jQuery插件animateSlide制作多点滑动幻灯片
2015/06/11 Javascript
Angular2学习笔记——详解NgModule模块
2016/12/02 Javascript
Express下采用bcryptjs进行密码加密的方法
2018/02/07 Javascript
element-ui使用导航栏跳转路由的用法详解
2018/08/22 Javascript
angular使用md5,CryptoJS des加密的方法
2019/06/03 Javascript
javascript异步处理与Jquery deferred对象用法总结
2019/06/04 jQuery
js实现点击烟花特效
2020/10/14 Javascript
通过JS判断网页是否为手机打开
2020/10/28 Javascript
[02:27]《DAC最前线》之附加赛征程
2015/01/29 DOTA
python添加模块搜索路径方法
2017/09/11 Python
Python编程中NotImplementedError的使用方法
2018/04/21 Python
python 实现求解字符串集的最长公共前缀方法
2018/07/20 Python
网易有道2017内推编程题 洗牌(python)
2019/06/19 Python
Django如何实现上传图片功能
2019/08/16 Python
Python帮你微信头像任意添加装饰别再@微信官方了
2019/09/25 Python
Python(PyS60)实现简单语音整点报时
2019/11/18 Python
在线购买廉价折扣书籍和小说:BookOutlet.com
2018/02/19 全球购物
出国导师推荐信
2014/01/16 职场文书
小学英语教学反思案例
2014/02/04 职场文书
初一新生军训方案
2014/05/22 职场文书
基层干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
行政复议答复书
2015/07/01 职场文书
详解Javascript实践中的命令模式
2021/05/05 Javascript
Pytorch DataLoader shuffle验证方式
2021/06/02 Python
JS代码编译器Monaco使用方法
2021/06/11 Javascript
JavaScript获取URL参数的方法分享
2022/04/07 Javascript