Mysql
 sql >> Base de données >  >> RDS >> Mysql

Créer une procédure stockée MySQL à l'aide de JPA Hibernate

Cela peut être possible si vous mentionnez la propriété suivante dans l'url

spring.datasource.url=jdbc:mysql://localhost:3306/test?allowMultiQueries=true

Le allowMultiQueries demandera au pilote d'envoyer des requêtes délimitées à la base de données.

Veuillez noter que si vous utilisez des requêtes natives, soyez conscient de l'attaque par injection sql. Vous n'avez pas besoin de mettre le délimiteur (DELIMITER) explicitement. L'instruction sql La requête suivante fonctionne

SET myDatabase; 

DROP PROCEDURE IF EXISTS myStoredProcedure; 

CREATE PROCEDURE myStoredProcedure ( _description VARCHAR(50), _value INT ) 

BEGIN 

INSERT INTO 
    myTable ( description, value ) 
VALUES ( _description, _value ); 

SELECT id, description, value 
  FROM myTable 
WHERE id = LAST_INSERT_ID(); 

END;