I am trying to create a mysql stored procedure . I have successfully created a procedure using the following code :
delimiter $$
CREATE PROCEDURE `myprocedure` (IN
var1 DATE)
BEGIN
<---code-->
END
And
SHOW CREATE PROCEDURE myprocedure
shows me the procedure I have created.
But the Call myprocedure(2011-05-31);
shows me the following error
#1305 - PROCEDURE db.myprocedure does not exist
db is database where I have created the procedure
What mistake am I doing?
Can anyone help me in this?
This error states “Could not find stored procedure 'GO'“. It simply means that the SQL Server could found the stored procedure with the name “GO“. Now, the main reason behind this error could be the misuse of the “GO” statement.
Use SQL Server Management StudioExpand Databases, expand the database in which the procedure belongs, and then expand Programmability. Expand Stored Procedures, right-click the procedure to grant permissions on, and then select Properties.
You cannot execute a stored procedure inside a function, because a function is not allowed to modify database state, and stored procedures are allowed to modify database state.
please check the following example paying particular attention to use of delimiters and quoting of date input parameters.
drop procedure if exists my_procedure;
delimiter #
create procedure my_procedure
(
in p_start_date date
)
begin
-- do something...
select p_start_date as start_date; -- end of sql statement
end# -- end of stored procedure block
delimiter ; -- switch delimiters again
call my_procedure('2011-01-31');
+------------+
| start_date |
+------------+
| 2011-01-31 |
+------------+
1 row in set (0.00 sec)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With