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

Wie fügt man gespeicherte Prozeduren in mySQL aus PHP ein/erstellt sie?

Ich habe es nicht getestet, aber mysqli_multi_query() wird mich nicht überraschen Erwarten Sie, dass alle Abfragen dasselbe Trennzeichen haben. Versuchen Sie, die Erstellung der gespeicherten Prozedur in eine einzige Abfrage zu packen, ohne den DELIMITER-Modifizierer ?

zu verwenden

Also statt

<?php
$results = mysqli_multi(
    'DELIMITER $$
    USE `dbname`$$
    CREATE PROCEDURE `procname`(IN inputparameters)
    BEGIN
    ... procedure goes here

    ;
    END$$
    DELIMITER ;
');
?>

Mach das einfach

<?php
$result = mysqli_query('CREATE PROCEDURE `procname`(IN inputparameters) BEGIN ...; END');

Und sagen Sie uns, ob es funktioniert :)