Wie kann ich eine STORED PROCEDURE in einer STORED FUNCTION aufrufen?

Wie kann ich eine STORED PROCEDURE in einer STORED FUNCTION aufrufen?

am 01.06.2006 15:02:31 von Stephan Menzel

Hallo,

wenn ich in einer Stored Function eine Stored Procedure aufrufe
bekomme ich den fehler
ERROR 1415 (0A000): Not allowed to return a result set from a
function, obwohl die stored procedure gar kein result set zurück
liefert!
Geht es denn überhaupt in einer Stored Function eine Stored Procedure
aufzurufen?




cu stephan

Re: Wie kann ich eine STORED PROCEDURE in einer STORED FUNCTION aufrufen?

am 01.06.2006 17:22:00 von Axel Schwenke

Stephan Menzel wrote:

> wenn ich in einer Stored Function eine Stored Procedure aufrufe
> bekomme ich den fehler
> ERROR 1415 (0A000): Not allowed to return a result set from a
> function, obwohl die stored procedure gar kein result set zurück
> liefert!
> Geht es denn überhaupt in einer Stored Function eine Stored Procedure
> aufzurufen?

So lange die SP kein Resultset liefert, geht das. Guckst du:

root@localhost/test>select f1();
+------+
| f1() |
+------+
| 42 |
+------+

root@localhost/test>show create function f1\G
CREATE DEFINER=`root`@`localhost` FUNCTION `f1`() RETURNS int(11)
begin
call p1();
return 42;
end

root@localhost/test>show create procedure p1\G
CREATE DEFINER=`root`@`localhost` PROCEDURE `p1`()
begin end

root@localhost/test>select version();
+-----------+
| version() |
+-----------+
| 5.0.20 |
+-----------+


XL