Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Spring Boot MySQL-Datenbank-Initialisierungsfehler bei gespeicherten Prozeduren

Die Antwort stellte sich als sehr einfach heraus. Spring Boot verfügt über eine DataSource-Trennzeicheneigenschaft, die in der Datei „application.properties“ festgelegt werden kann:

spring.datasource.separator=^;

Dann in der Datei schema.sql alle ; Anweisungen, die nicht in der gespeicherten Prozedur enthalten sind, müssen mit dem neuen Trennzeichen aktualisiert werden.

DROP PROCEDURE IF EXISTS `database`.FOO;
CREATE PROCEDURE `database`.FOO()

BEGIN
  SELECT * from `database`.employees;
END ^;