sql-parser icon indicating copy to clipboard operation
sql-parser copied to clipboard

Feature/support alter routine

Open niconoe- opened this issue 1 year ago • 1 comments

Add support for ALTER FUNCTION and ALTER PROCEDURE statements.

The ABNF for those statements are exactly the same since MySQL 5.0 to latest MariaDb version:

  • Doc for MySQL 5.0: https://downloads.mysql.com/docs/refman-5.0-en.a4.pdf#page=1083
  • Doc for MySQL 8.0: https://dev.mysql.com/doc/refman/8.0/en/alter-function.html
  • Doc for MariaDb: https://mariadb.com/kb/en/alter-function/

2 commits are done: the first with everything but the options definitions in case of ALTER PROCEDURE or ALTER FUNCTION, causing all *.out data files giving the error "Unrecognized alter operation." we are trying to solve. The second commit applies the options definitions, so you can see that the related *.out files are updated to no longer have the parser error, but the full options built instead.

@williamdes It's been a long time :smile: . I'll not be back for so long, but I never come back with empty hands :laughing: .

niconoe- avatar Mar 01 '24 14:03 niconoe-

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 96.79%. Comparing base (716d545) to head (edc7db8). Report is 4 commits behind head on 5.9.x.

Additional details and impacted files
@@            Coverage Diff            @@
##              5.9.x     #553   +/-   ##
=========================================
  Coverage     96.79%   96.79%           
- Complexity     2257     2259    +2     
=========================================
  Files            69       69           
  Lines          5172     5174    +2     
=========================================
+ Hits           5006     5008    +2     
  Misses          166      166           

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

codecov[bot] avatar Mar 01 '24 14:03 codecov[bot]

I'm glad you valid this 🙂

I'm having the Benchmark on PHP 8.0 not passing, but I don't understand why. Is this a blocking point preventing this PR to be merged? If yes, how can I handle this please?

Thanks a lot!

niconoe- avatar Mar 07 '24 17:03 niconoe-