用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 相关文章推荐
关于Appserv无法打开localhost问题的解决方法
Oct 16 PHP
PHP连接SQLServer2005 的问题解决方法
Jul 19 PHP
提升PHP性能的21种方法介绍
Jun 25 PHP
php顺序查找和二分查找示例
Mar 27 PHP
php绘制圆形的方法
Jan 24 PHP
win7安装php框架Yii的方法
Jan 25 PHP
PHP实现仿百度文库,豆丁在线文档效果(word,excel,ppt转flash)
Mar 10 PHP
完美的php分页类
Oct 24 PHP
Laravel框架使用Seeder实现自动填充数据功能
Jun 13 PHP
php DES加密算法实例分析
Sep 18 PHP
php传值和传引用的区别点总结
Nov 19 PHP
PHP数组访问常用方法解析
Sep 05 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统计字符串中中英文字符的个数
2013/06/23 PHP
PHP性能优化大全(php.ini)
2016/05/20 PHP
微信支付PHP SDK ―― 公众号支付代码详解
2016/09/13 PHP
php遍历替换目录下文件指定内容的方法
2016/11/10 PHP
Laravel框架基于中间件实现禁止未登录用户访问页面功能示例
2019/01/17 PHP
redis+php实现微博(一)注册与登录功能详解
2019/09/23 PHP
Tinymce+jQuery.Validation使用产生的BUG
2010/03/29 Javascript
javascript学习笔记(八) js内置对象
2012/06/19 Javascript
js下拉框二级关联菜单效果代码具体实现
2013/08/03 Javascript
window.opener用法和用途实例介绍
2013/08/19 Javascript
JavaScript将数组转换成CSV格式的方法
2015/03/19 Javascript
jquery实现简单的自动播放幻灯片效果
2015/06/13 Javascript
jQuery新窗口打开外链接
2016/07/21 Javascript
javascript中call,apply,bind函数用法示例
2016/12/19 Javascript
Angular4学习笔记之新建项目的方法
2017/07/18 Javascript
el-select 下拉框多选实现全选的实现
2019/08/02 Javascript
Js Snowflake(雪花算法)生成随机ID的实现方法
2020/08/26 Javascript
[54:06]OG vs TNC 2018国际邀请赛小组赛BO2 第二场 8.19
2018/08/21 DOTA
python插入排序算法的实现代码
2013/11/21 Python
python网络编程学习笔记(一)
2014/06/09 Python
编写同时兼容Python2.x与Python3.x版本的代码的几个示例
2015/03/30 Python
python数据结构之图的实现方法
2015/07/08 Python
详解Python静态网页爬取获取高清壁纸
2019/04/23 Python
python retrying模块的使用方法详解
2019/09/25 Python
Django中ORM找出内容不为空的数据实例
2020/05/20 Python
TensorFlow实现模型断点训练,checkpoint模型载入方式
2020/05/26 Python
Python 利用OpenCV给照片换底色的示例代码
2020/08/03 Python
python环境搭建和pycharm的安装配置及汉化详细教程(零基础小白版)
2020/08/19 Python
python 求两个向量的顺时针夹角操作
2021/03/04 Python
详解如何用canvas画一个微笑的表情
2019/03/14 HTML / CSS
与C++相比,Java中的数组有什么不同
2014/03/25 面试题
2014年重阳节老干部座谈会局领导发言稿
2014/09/25 职场文书
小学生优秀评语
2014/12/29 职场文书
学生个人总结范文
2015/02/15 职场文书
质量保证书格式模板
2015/02/27 职场文书
Go 中的空白标识符下划线
2022/03/25 Golang