我无法在 CodeIgniter 中调用存储过程.但是,当我直接在 MySQL 中调用该过程时,它可以工作.为什么我在 CodeIgniter 中调用它时它不起作用?
I can't call a stored procedure in CodeIgniter. However, when I call the procedure directly in MySQL, it works. Why isn't it working when I call it in CodeIgniter?
CREATE DEFINER=`root`@`localhost` PROCEDURE `test_proc`()
LANGUAGE SQL
NOT DETERMINISTIC
CONTAINS SQL
SQL SECURITY DEFINER
COMMENT ''
BEGIN
declare name1 TEXT;
declare id1 TEXT;
select name,id into name1,id1 from my_tbl WHERE name='sam';
select * from my_tbl;
select name1,id1;
END
我觉得你是用下面的方式来调用过程.
I think you are using the following way to call procedure.
$this->db->call_function('test_proc');
错了.使用此方法只能调用默认过程.要调用您定义的过程,您必须使用
Its wrong. Only default procedures can be called using this method. To call procedures defined by you, you have to go with
$this->db->query("call test_proc()");
这篇关于如何在 CodeIgniter 中调用存储过程?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持html5模板网!
在 SELECT(MYSQL/PHP) 中加入 2 个表Joining 2 tables in SELECT(MYSQL/PHP)(在 SELECT(MYSQL/PHP) 中加入 2 个表)
如何使<option selected=“selected">由How to make lt;option selected=quot;selectedquot;gt; set by MySQL and PHP?(如何使lt;option selected=“selectedgt;由 MySQL 和 PHP 设置?)
使用 PHP 中的数组自动填充选择框Auto populate a select box using an array in PHP(使用 PHP 中的数组自动填充选择框)
PHP SQL SELECT where like search item with multiple wordsPHP SQL SELECT where like search item with multiple words(PHP SQL SELECT where like search item with multiple words)
json_encode 从 MSSQL-SELECT 产生 JSON_ERROR_UTF8json_encode produce JSON_ERROR_UTF8 from MSSQL-SELECT(json_encode 从 MSSQL-SELECT 产生 JSON_ERROR_UTF8)
MySQL ORDER BY rand(),名称 ASCMySQL ORDER BY rand(), name ASC(MySQL ORDER BY rand(),名称 ASC)