Bug #54090 Forward Engineer uses invalid delimiter for function dropping
Submitted: 30 May 2010 20:06 Modified: 31 May 2010 9:34
Reporter: Jyrki Nousiainen Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Workbench Severity:S3 (Non-critical)
Version:5.2.21 OS:Windows
Assigned to: CPU Architecture:Any

[30 May 2010 20:06] Jyrki Nousiainen
Description:
Forward Engineer uses invalid delimiter when dropping a function before its creation.

How to repeat:
1. Create new empty file
2. Create new routine
3. Start forward engineer
4. Check DROP Objects Before Each CREATE Object
5. Export MySQL Routine Objects
6. SQL part will show 
-- 
-- -----------------------------------------------------
-- function Foo
-- -----------------------------------------------------
USE `Bar`$$
DROP function IF EXISTS `Bar`.`Foo`$$
SHOW WARNINGS;

DELIMITER $$
USE `Bar`$$
CREATE function `Bar`.`Foo` ()
returns int
BEGIN
    declare value int;
    set value = 0;
    return value;
END$$
DELIMITER ;
--

Suggested fix:
Default delimiter (;) should be used until delimiter is explicitly changed.
Function drop should still use default delimiter like show warnings is using.
[31 May 2010 9:34] Johannes Taxacher
this is a duplicate of Bug #53467