Stored procedures kopiëren (MySQL): verschil tussen versies
Naar navigatie springen
Naar zoeken springen
Regel 34: | Regel 34: | ||
* https://forums.mysql.com/read.php?98,370486,371407#msg-371407 | * https://forums.mysql.com/read.php?98,370486,371407#msg-371407 | ||
* https://ocelot.ca/blog/blog/2017/08/22/no-more-mysql-proc-in-mysql-8-0/ | * https://ocelot.ca/blog/blog/2017/08/22/no-more-mysql-proc-in-mysql-8-0/ | ||
+ | * https://dev.mysql.com/doc/refman/8.0/en/information-schema-routines-table.html |
Versie van 5 nov 2020 14:47
Ik werk vaak met projectdatabases. Bij het starten van zo'n project, moet ik eerst alle relevante sprocs handmatig kopiëren. Dat kan gemakkelijker:
Show create procedure
Je kunt een heel eind komen met show create procedure <procedure-naam>
:
show create procedure fetch_table;
mysql.proc
Online vind ik regelmatig oplossingen die gebruik maken van de systeemtabel mysql.proc
. Deze bestaat echter niet in de nieuwere versies van MySQL [1].
information_schema.routines
Info over sprocs kun je vinden in information_schema.routines
. Bv.:
select * from information_schema.routines where routine_schema=database() and routine_type = "PROCEDURE";
Alleen mist de header met de input-parameters.