یک SP کد ( کوئری ) آماده شده MYSQL است که ذخیره میشه و در نتیجه می توانید بارها و بارها از کد استفاده کنید.
بنابراین اگر یک درخواست MYSQL دارید که بارها و بارها اون را می نویسید ، با روش Stored Procedure ذخیره کنید و برای اجرا، فقط فراخوانی کنید.
SP ها روش هایی هستند که شما میتونید به اونها پارامتر ورودی بدید و کوئری های MySql رو اجرا کنید. به عنوان مثال برای نوشتن دستورات Select , Update , Delete و … میتونید از SP ها استفاده کنید.
استفاده از SP ها به همراه PDO باعث ذخیره کوئری در حافظه می شود و در نتیجه فراخوانی مجدد اون بسیار سریعتر از زمان اولیه اجرای کوئری خواهد بود.
در یک SP شما میتونید چندین کوئری رو ذخیره و اجرا کنید و حتی از دستورات شرطی هم استفاده کنید. می توانید در ورودی متغیر تعریف کنید و متغیر ها رو مقدار دهی کنید و در کوئری ها و دستورات شرطی از اونها استفاده کنید.
CREATE PROCEDURE store_procedure_name (IN parameter DataType, IN parameter DataType) BEGIN // sql_statement END
مثال:
CREATE PROCEDURE country (IN con CHAR(20)) BEGIN SELECT Name, HeadOfState FROM Country WHERE Continent = con; END //
اجرا:
CALL store_procedure_name (parameter1, parameter2);