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...

面试题 相关文章推荐
判断单链表中是否存在环
Jul 16 面试题
如何在存储过程中使用Loop
Jan 05 面试题
如何删除一个表里面的重复行
Jul 13 面试题
商得四方公司面试题(gid+)
Apr 30 面试题
在C#中如何实现多态
Jul 02 面试题
Linux内核产生并发的原因
Jul 13 面试题
海量信息软件测试笔试题
Aug 08 面试题
介绍一下Prototype的$()函数,$F()函数,$A()函数都是什么作用?
Mar 05 面试题
编程输出如下图形
Nov 24 面试题
线程同步的方法
Nov 23 面试题
什么是servlet
May 08 面试题
为什么说Ruby是一种真正的面向对象程序设计语言
Oct 30 面试题
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 header Content-Type类型小结
2011/07/03 PHP
PHP实现中国公民身份证号码有效性验证示例代码
2017/05/03 PHP
Laravel 自带的Auth验证登录方法
2019/09/30 PHP
jquery调用asp.net 页面后台的实现代码
2011/04/27 Javascript
jquery判断元素是否隐藏的多种方法
2014/05/06 Javascript
使用原生js封装webapp滑动效果(惯性滑动、滑动回弹)
2014/05/06 Javascript
JavaScript的设计模式经典之建造者模式
2016/02/24 Javascript
js与applet相互调用的方法
2016/06/22 Javascript
js 获取本地文件及目录的方法(推荐)
2016/11/10 Javascript
浅谈Node.js 沙箱环境
2018/05/15 Javascript
深入浅析Vue 中 ref 的使用
2019/04/29 Javascript
解决vue admin element noCache设置无效的问题
2019/11/12 Javascript
推荐几个不错的console调试技巧实现
2019/12/20 Javascript
JS操作Fckeditor的一些常用方法(获取、插入等)
2020/02/19 Javascript
[01:08:24]DOTA2-DPC中国联赛 正赛 RNG vs Phoenix BO3 第一场 2月5日
2021/03/11 DOTA
Python数组条件过滤filter函数使用示例
2014/07/22 Python
Python中的lstrip()方法使用简介
2015/05/19 Python
Python 实现字符串中指定位置插入一个字符
2018/05/02 Python
Python 创建空的list,以及append用法讲解
2018/05/04 Python
对Python 3.2 迭代器的next函数实例讲解
2018/10/18 Python
在Python中关于使用os模块遍历目录的实现方法
2019/01/03 Python
python之yield和Generator深入解析
2019/09/18 Python
使用npy转image图像并保存的实例
2020/07/01 Python
python3 简单实现组合设计模式
2020/07/02 Python
HTML5新增的Css选择器、伪类介绍
2013/08/07 HTML / CSS
eBay加拿大站:eBay.ca
2019/06/20 全球购物
美国孩之宝玩具官网:Hasbro Pulse
2019/06/24 全球购物
GUESS Factory加拿大:牛仔裤、服装及配饰
2019/09/20 全球购物
会计应聘求职信范文
2013/12/17 职场文书
探亲邀请信范文
2014/01/30 职场文书
解除劳动合同协议书
2014/04/14 职场文书
全国优秀辅导员事迹材料
2014/05/14 职场文书
员工合理化建议书
2014/05/19 职场文书
办公用品质量保证书
2015/05/11 职场文书
2016孝老爱亲模范事迹材料
2016/02/26 职场文书
CSS布局之浮动(float)和定位(position)属性的区别
2021/09/25 HTML / CSS