显示mysql存储过程中的记录

时间:2012-05-11 21:04:51

标签: mysql stored-procedures

我刚开始学习如何在MYSQL中编写存储过程,我遇到了障碍。

我写了以下代码:

DELIMITER $$
DROP PROCEDURE IF EXISTS `emscribedx`.`countcodes` $$
CREATE PROCEDURE `emscribedx`.`countcodes` ()
BEGIN
declare doneprocessing int default 0;
declare thisaccount varchar(50);
declare countcursor cursor for select acct from patientid where patienttype='P';
declare continue handler for not found
set doneprocessing = 1;
Fetch countcursor into thisaccount;
Repeat
select * from doc_table where acct = thisaccount;
until doneprocessing = 1
END repeat;
close countcursor;
END $$

DELIMITER ;

我想显示在repeat语句之后发生的select语句的结果。但是我该怎么做?当我执行存储过程时,没有任何反应?

谢谢,

埃利奥特

1 个答案:

答案 0 :(得分:0)

该过程只能返回单个查询的结果,为什么不使用它呢?

SELECT doc_table.* 
FROM doc_table 
INNER JOIN patientid
ON patientid.acct = doc_tableacct
WHERE patientid.patienttype='P';

如果你愿意,可以把它放在一个程序里面。