Passing a parameter to a bookmark
If we look again at the first bookmark we created (finding all books for author 1), we realize that although it's useful, it's limited to finding just one author—always the same one.
Special query syntax enables the passing of parameters to bookmarks. This syntax uses the fact that SQL comments enclosed within /*
and */
are ignored by MySQL. If the /*[VARIABLE]*/
construct exists somewhere in the query, it will be expanded at execution time with the value provided when recalling the bookmark.
Creating a parameterized bookmark
Let us say we want to find all the books for a given author when we don't know the author's id
. We first enter the following query:
SELECT author.name, author.id, book.title FROM book, author WHERE book.author_id = author.id /* AND author.name LIKE '%[VARIABLE]%' */
The part between the comment characters (/* */
) will be expanded later, and the tags will be removed. We label this query as a bookmark named find author by name (before executing...