php PDO 调用带有out参数的mysql存储过程实例

最近使用PHP数据库访问最新的一种技术 POD,不封装,代码也写得很少。 下面我将贴出我的代码。

代码部分:

<?php
 $dsn = "mysql:host=localhost;dbname=mysqldatabasedemo";
 $db = new PDO($dsn,'root','123456@#',array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET
   NAMES'GBK';"));
  $someInParameter1='hellow';
  $stmt = $db->prepare("CALL outputProcudure(:addName,@outASD)");
  $stmt->bindParam(':addName', $someInParameter1);
   if($stmt->execute())
   {
      $rs=$db->query('select @outASD')->fetchAll();
      $dataArray=$rs[0];
      echo("<script type='text/javascript'> alert('"+$dataArray[0]+"');</script>");
   }
   else
   {
    echo("<script type='text/javascript'> alert('插入失败');</script>");
   }
?>

mysql存储过程:

PHP_PDO 调用mysql 带返回参数的存储过程

    DROP PROCEDURE IF EXISTS pro_test;  
      
    create procedure pro_test(in val VARCHAR(50) ,out rtn int)  
    begin  
    declare err INT default 0;  
    -- 如果出现异常,会自动处理并rollback  
    declare exit handler for  sqlexception ROLLBACK ;
-- 启动事务  
start transaction;
insert into test_user values(NULL,1,'啊是大三的');  
-- set err = @@IDENTITY; -- =   获取上一次插入的自增ID;  
set err =last_insert_id(); -- 获取上一次插入的自增ID  
insert into test_user VALUES(NULL,val,err);  
  
-- 运行没有异常,提交事务  
commit;  
-- 设置返回值为1  
set rtn=1;  
end;
$name = '成都市';  
          
        $stmt = $db->prepare("CALL pro_test(?,@sp_result);");  
        $stmt->bindParam(1, $name);  
        $stmt->execute ();  
        $outputArray = $db->query("select @sp_result")->fetch(PDO::FETCH_ASSOC);
<span style="font-family: Arial, Helvetica, sans-serif;">               </span><span style="font-family: Arial, Helvetica, sans-serif;">print_r($outputArray["@sp_result"]);</span>

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索数据库
, php
, 实例
, 存储过程
, 参数
代码
pdo连接mysql实例、pdo实例、php pdo 实例、pdo mysql、php pdo mysql,以便于您获取更多的相关知识。

时间: 2024-09-10 13:20:36

php PDO 调用带有out参数的mysql存储过程实例的相关文章

ASP调用带有输入参数和输出参数的存储过程

存储过程 返回值其实是一种特殊的输出参数.在大多数情况下,我们用到的是同时有输入及输出参数的存储过程,比如我们想取得用户信息表中,某ID用户的用户名,这时候,有一个输入参数----用户ID,和一个输出参数----用户名.实现这一功能的存储过程如下:<br><br> <table style="WIDTH: 475px; HEIGHT: 220px" borderColor=#cccccc width=475 align=center bgColor=#e3

asp.net实现调用带有输出参数的存储过程实例_实用技巧

本文实例讲述了asp.net实现调用带有输出参数的存储过程.分享给大家供大家参考,具体如下: 前台jqurey <script type="text/javascript"> $(document).ready(function(){ $('#change_image').click(function(){ $('#imgAuthenCode').attr('src','CheckCode.aspx?'+Math.random());}); $("#account

java调用mysql存储过程实例分析

  本文实例讲述了java调用mysql存储过程的方法.分享给大家供大家参考.具体如下: 数据库的测试代码如下 : 1.新建表test ? 1 2 3 4 5 create table test( field1 int not null ) TYPE=MyISAM ; insert into test(field1) values(1); 2.删除已存在的存储过程: ? 1 2 3 -- 删除储存过程 delimiter // -- 定义结束符号 drop procedure p_test; 3

java调用mysql存储过程实例分析_java

本文实例讲述了java调用mysql存储过程的方法.分享给大家供大家参考.具体如下: 数据库的测试代码如下 : 1.新建表test create table test( field1 int not null ) TYPE=MyISAM ; insert into test(field1) values(1); 2.删除已存在的存储过程: -- 删除储存过程 delimiter // -- 定义结束符号 drop procedure p_test; 3.mysql存储过程定义: create p

mysql 存储过程实例

mysql 存储过程实例 技术要点 一个存储过程包括名字.参数列表,以及可以包括很多SQL语句的SQL语句集.下面为一个存储过程的定义过程: create procedure proc_name (in parameter integer)begindeclare variable varchar(20);if parameter=1 thenset variable='MySQL';elseset variable='PHP';end if;insert into tb (name) valu

MySQL存储过程实例教程

MySQL存储过程实例教程 MySQL 5.0以后的版本开始支持存储过程,存储过程具有一致性.高效性.安全性和体系结构等特点,本节将通过具体的实例讲解PHP是如何操纵MySQL存储过程的. 实例261:存储过程的创建 这是一个创建存储过程的实例 录像位置:光盘mingrisoft9?lt;/p> 实例说明 为了保证数据的完整性.一致性,提高应用的性能,常采用存储过程技术.MySQL 5.0之前的版本并不支持存储过程,随着MySQL技术的日趋完善,存储过程将在以后的项目中得到广泛的应用.本实例将介

在sqlplus和JAVA中调用带有IN-OUT参数的存储过程

一. SQLPLUS 比如我的数据库中有下面这样一个存储过程,我怎么样能调用这个存储过程,并得到返回值呢? CREATE OR REPLACE PROCEDURE TEST_PROCEDURE1 ( PARAM1 IN VARCHAR2, PARAM2 IN OUT VARCHAR2, PARAM3 IN OUT NUMBER) IS BEGIN PARAM2 := '88888'; PARAM3 := '0'; END TEST_PROCEDURE1; 一般调用存储过程或者函数会想到CALL或

php调用mysql存储过程实例分析_php技巧

本文实例分析了php调用mysql存储过程的方法.分享给大家供大家参考.具体分析如下: Mysql存储过程创建语法,代码如下: CREATE PROCEDURE和CREATE FUNCTION : 复制代码 代码如下: CREATE PROCEDURE sp_name ([proc_parameter[,...]])       [characteristic ...] routine_body   CREATE FUNCTION sp_name ([func_parameter[,...]])

php程序中调用mysql存储过程实例

Mysql存储过程创建语法  代码如下 复制代码 CREATE PROCEDURE和CREATE FUNCTION CREATE PROCEDURE sp_name ([proc_parameter[,...]])     [characteristic ...] routine_body   CREATE FUNCTION sp_name ([func_parameter[,...]])     RETURNS type     [characteristic ...] routine_bod