Zitat von
mkinzler:
Ich bin schon lang von
MySQL weg. Deshalb kenne ich mich mit dessen SP-Unterstützung garnicht aus. Eine SP in
MYSQL wäre dann aus meiner Sicht kene SP sondern eher eine UDF.
Ich glaube in der
IB/
FB Szene werden diese 2 Begriffe (SB & UDF) etwas komisch benutzt (zumindest für mich als jmd, der auch Oracle nutzt).
Hauptsächlich weil
FB gar keine Funktionen deklarieren sondern die nur aus native Libs importieren kann.
@Topic, so wie ich es gesehen habe, kann sogar ySQL Resultsets aus einer SProc zurückgeben. Aber das ist dann genauso beschissen unwartbar gelöst wie in
MSSQL.
Und zwar jedes Select in deiner SProc, das keine Werte setzt, wird plötzlich zu einem Resultset für den, der die SProc aufruft.
Einfache SProc, ohne Ergebnis:
SQL-Code:
create procedure NoResultset
begin
declare someVar Int;
SELECT abc
INTO someVar
FROM def
where xyz = 42;
end
Eine Sproc, die ein Resultset erzeugt:
SQL-Code:
create procedure WithResultset
begin
SELECT abc
/* INTO someVar */
FROM def
where xyz = 42;
end
Oops, keine Compiler-Fehlermeldung, kein gar nix. Aber plötzlich kommt da ein Ergebnis?
Ich habe kein
mySQL hier und ich nutze es auch nicht, weil ich bisher immer Argumente fand warum das Viech in kritischen Umgebugnen nix zu suchen hat.
Aber so habe ich deren Doku-Page zu Sprocs nach dem Überfliegen verstanden.