Dumitru Gutu
Dumitru Gutu

Reputation: 579

mysql create a simple procedure

I'm confused ... why below code fail ? MySQL 5.6. I want create simple procedure to delete data in some tables

DROP PROCEDURE IF EXISTS truncateStaging;
create procedure truncateStaging
begin
  delete from stg_user;
  delete from stg_userflag;
end;        
PROCEDURE test.truncateStaging does not exist
procedure IF dropped.    
Error starting at line : 3 in command -
create procedure truncateStaging
begin
  delete from stg_user;
  delete from stg_userflag;
end;
Error report -
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'begin
  delete from stg_user;
  delete from stg_userflag;
end' at line 2

Upvotes: 0

Views: 37

Answers (1)

juergen d
juergen d

Reputation: 204766

First you need to change the delimiter and second you forgot the () in your procedure definition

DROP PROCEDURE IF EXISTS truncateStaging;
delimiter |
create procedure truncateStaging()
begin
  delete from stg_user;
  delete from stg_userflag;
end
|
delimiter ;

Upvotes: 1

Related Questions