← Back to team overview

maria-discuss team mailing list archive

Re: CREATE PROCEDURE clauses

 

Hi Federico!


2013/9/2 Federico Razzoli <federico_raz@xxxxxxxx>:
> Ciao,
>
> I wanted to add some info in the CREATE PROCEDURE page in the KB, but I think that some info about CREATE PROCEDURE clauses miss both in the kb and in the MySQL manual.
>
> * [NOT] DETERMINISTIC. From MySQL docs:
> "A routine is considered “deterministic” if it always produces the same result for the same input parameters, and “not deterministic” otherwise."
> What does this exactly mean for procedures? OUT and INOUT parameters? Resultsets returned by the procedure? Both?

i think it's something like: RANDON() = not deterministic, ROUND(1.5)
= deterministic
maybe it's important for replication (must be done via binary, instead
SQL), and it's important for query cache (not deterministic can't be
cached)


> * NO SQL: As far as I understand, even SET is a SQL statement. I guess that a "no sql" function is something like
> CREATE FUNCTION x(n INT) RETURNS INT
> BEGIN
> RETURN n*2;
> END;
>
> But what is a "no sql" procedure (if such a procedure even exists)?

i don't know, but reading mysql protocol, there's some functions for
show fields, process info, process kill,
http://dev.mysql.com/doc/internals/en/text-protocol.html

> I'm sorry if this info is already written somewhere, but I really wasn't able to find it - and I feel that the KB should specify things like these.
>
> Greetings
> Federico
>
> _______________________________________________
> Mailing list: https://launchpad.net/~maria-discuss
> Post to     : maria-discuss@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~maria-discuss
> More help   : https://help.launchpad.net/ListHelp



-- 
Roberto Spadim
SPAEmpresarial


Follow ups

References