最近使用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