Procedure Function MySQL Tutorial

Here is the syntax:

CREATE [DEFINER = { user | CURRENT_USER }]
    PROCEDURE sp_name ([proc_parameter[,...]])
    [characteristic ...] Valid SQL procedure statement
proc_parameter:
    [ IN | OUT | INOUT ] param_name type
characteristic:
    LANGUAGE SQL
  | [NOT] DETERMINISTIC
  | { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
  | SQL SECURITY { DEFINER | INVOKER }
  | COMMENT 'string'
By default, the procedure is associated with the default database.
To associate explicitly with a given database, specify the name as db_name.sp_name.
The name must be followed by parentheses.
If the database is not provided, MySQL creates the procedure in the current database or gives a No database selected error.
Procedure names can be up to 64 characters long.
If you must have a procedure with the same name as a MySQL function, putting a space between the name and the parentheses will help MySQL differentiate between the two.