SQLite does not support stored procedures.
Well, not with that name, but it supports user defined functions which is effectively the same in all but name when used properly. I use them a lot.
You sure? On first glance i'd disagree.
an SP is a "custom" Procedure stored within the Database, usually used to execute complex and/or long-running SQL-Statements.
In the context of a Database it's its own "Object" within the Database (like a Table, View, Trigger...), and is usually called with a Syntax like
CALL MyStoredProcedure(SomeParam)
a UDF in the context of SQLite is a custom Function, which has to be registered with SQLite, and is used WITHIN an SQL-Statement, but is executed "outside" the sqlite-engine
The "classic" being the "regexp"-Function.
e.g.
SELECT MyFunc(SomeField) FROM SomeTable
in this example "MyFunc" must be registered from outside the sqlite-engine (think passing a Function-pointer), and when the SQL-Parser of sqlite encounters this token it calls the function, which is outside its engine
(similiar to a callback)