PHP如何调用MYSQL存储过程


Posted in 面试题 onMay 30, 2014
php调用mysql存储过程和函数的两种方法存储过程和函数是MySql5.0刚刚引入的。关于这方面的操作在PHP里面没有直接的支持。但是由于Mysql PHP API的设计,使得我们可以在以前的PHP版本中的mysql php api中支持存储过程和函数的调用。在php中调用存储过程和函数的主要步骤 1。调用存储过程的方法。 a。如果存储过程有 IN/INOUT参数,声明一个变量,输入参数给存储过程,该变量是一对,一个php变量(也可以不必,只是没有php变量时,没有办法进行动态输入),一个Mysql变量。 b。如果存储过程有OUT变量,声明一个Mysql变量。 mysql变量的声明比较特殊,必须让mysql服务器知道此变量的存在,其实也就是执行一条mysql语句。输入 set @mysqlvar=$phpvar ; c。使用mysql_query()/mysql_db_query()执行mysql 变量声明语句。 Mysql_query(“set @mysqlvar【=$pbpvar】”); 这样,在mysql服务器里面就有一个变量,@mysqlar。如果时IN参数,那么其值可以有phpar传入。 D。 如果时存储过程。 1。执行 call procedure()语句。也就是mysql_query(“call proceduer([var1]…)”); 2. 如果有返回值,执行select @ar,返回执行结果。 Mysql_query(“select @var)” 接下来的操作就和php执行一般的mysql语句一样了。可以通过mydql_fetch_row()等函数获得结果。如果时函数。 直接执行 select function() 就可以了。 php调用mysql存储过程和函数的方法一: $host=\”localhost\”; $user=\”root\”; $password=\”11212\”; $db=\”samp_db\”; $dblink=mysql_connect($host,$user,$password) or die(\”can’t connect to mysql\”); mysql_select_db($db,$dblink) or die(\”can’t select samp_db\”); $res=mysql_query(\”set @a=$password\”,$dblink); $res=mysql_query(\”call aa(@a)\”,$dblink); $res=mysql_query(\”select @a\”,$dblink); $row=mysql_fetch_row($res); echo $row[0]; php调用mysql存储过程和函数方法二:此方法需要db_mysqli.dll的支持!调用带有select语句的存储过程就出现 PROCEDURE p can’t return a result set in the given context的错误。Google了半天,在mysql官网上找到一些说法,db_mysql的模块不支持存储过程调用,解决方法是用 db_mysqli。测试了一下,果然可以了。

Tags in this post...

面试题 相关文章推荐
什么是类的返射机制
Feb 06 面试题
金山毒霸系列的笔试题
Apr 13 面试题
strlen的几种不同实现方法
May 31 面试题
C++是不是类型安全的
Feb 18 面试题
.NET remoting中对象激活的两种方式
Jun 08 面试题
Internal修饰符有什么含义
Jul 10 面试题
如何进行Linux分区优化
Sep 13 面试题
Linux面试题LINUX系统类
Nov 19 面试题
日期和时间问题
Jan 04 面试题
灵泰克Java笔试题
Jan 09 面试题
Structs界面控制层技术
Oct 11 面试题
JSP和Servlet有哪些相同点和不同点,他们之间的联系是什么?
Oct 22 面试题
mysql_pconnect()和mysql_connect()有什么区别
May 25 #面试题
什么是smarty? Smarty的优点是什么?
Aug 11 #面试题
mysql的最长数据库名,表名,字段名可以是多长
Apr 21 #面试题
可以在一个PHP文件里面include另外一个PHP文件两次吗
May 22 #面试题
PHP如何对用户密码进行加密
Jul 31 #面试题
PHP开发的一般流程
Aug 13 #面试题
PHP中如何使用Cookie
Oct 28 #面试题
You might like
利用PHP动态生成VRML网页
2006/10/09 PHP
php数组应用之比较两个时间的相减排序
2008/08/18 PHP
用php来改写404错误页让你的页面更友好
2013/01/24 PHP
简单的php缓存类分享     php缓存机制
2014/01/22 PHP
PHP header()函数常用方法总结
2014/04/11 PHP
PHP中多线程的两个实现方法
2016/10/14 PHP
js播放wav文件(源码)
2013/04/22 Javascript
用json方式实现在 js 中建立一个map
2014/05/02 Javascript
node.js中的Socket.IO使用实例
2014/11/04 Javascript
js实现显示当前状态的导航效果代码
2015/08/28 Javascript
BootStrap Tooltip插件源码解析
2016/12/27 Javascript
Node.js学习入门
2017/01/03 Javascript
Node.js 实现简单的接口服务器的实例代码
2017/05/23 Javascript
jquery+css实现简单的图片轮播效果
2017/08/07 jQuery
React Native 集成jpush-react-native的示例代码
2017/08/16 Javascript
从对象列表中获取一个对象的方法,依据关键字和值
2017/09/20 Javascript
React Native 通告消息竖向轮播组件的封装
2020/08/25 Javascript
Angular4实现鼠标悬停3d倾斜效果
2017/10/25 Javascript
VueJs使用Amaze ui调整列表和内容页面
2017/11/30 Javascript
JS面向对象编程基础篇(一) 对象和构造函数实例详解
2020/03/03 Javascript
小程序开发之模态框组件封装
2020/04/23 Javascript
[01:14:35]DOTA2上海特级锦标赛B组资格赛#1 Alliance VS Fnatic第一局
2016/02/26 DOTA
使用PyQt4 设置TextEdit背景的方法
2019/06/14 Python
Python字典对象实现原理详解
2019/07/01 Python
Pytorch之Tensor和Numpy之间的转换的实现方法
2020/09/03 Python
日本乐天德国站:Rakuten.de
2019/05/16 全球购物
智能室内花园:Click & Grow
2021/01/29 全球购物
大四本科生的自我评价
2013/12/30 职场文书
合作意向书格式及范文
2014/03/31 职场文书
核心价值观演讲稿
2014/05/13 职场文书
教研处工作方案
2014/05/26 职场文书
2015年党员承诺书
2015/01/21 职场文书
我的暑假生活作文(五年级)范文
2019/08/07 职场文书
Vue vee-validate插件的简单使用
2021/06/22 Vue.js
Java spring单点登录系统
2021/09/04 Java/Android
mysql sql常用语句大全
2022/06/21 MySQL