In this chapter we reviewed the facilities MySQL provides for including SQL within stored programs. The following types of SQL statements can appear in stored programs:
Simple embedded non-
SELECT statements, including DML
UPDATE) and DDL statements (
ALTER, etc.) can be included within
stored programs without any particular restrictions.
SELECT statements that
return only one row may include an
INTO clause that stores the results of
SELECT statement into
stored program variables.
SELECT statements allow
you to iterate through the rows returned by a multirow
SELECT statement by using a cursor.
Cursors involve a bit more programming effort, including a looping
structure and a condition handler to prevent “no data to fetch”
errors when all rows from the cursor have been retrieved.
Nevertheless, cursors will probably be your main mechanism for
performing complex data processing in stored programs.
statements—those without an
INTO clause or a
CURSOR statement—can be included within
stored procedures (but not within stored functions). The output
will be returned to the calling program (but not to a calling
stored procedure). You will need to employ special code in your
calling program to handle result sets from stored procedures,
especially if more than a single result set is returned.
SQL statements can also be prepared dynamically using MySQL server-side prepared statements.
If your SQL ...