sql >> Database teknologi >  >> RDS >> Mysql

Hvordan indsætter/opretter man lagrede procedurer i mySQL fra PHP?

Jeg har ikke testet, men jeg vil ikke blive overrasket over mysqli_multi_query() forventer at have den samme afgrænsning af hver forespørgsel. Prøv at pakke oprettelsen af ​​den lagrede procedure i en enkelt forespørgsel uden at bruge DELIMITER-modifikatoren ?

Så i stedet for

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

    ;
    END$$
    DELIMITER ;
');
?>

Bare gør dette

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

Og fortæl os, om det virker :)



  1. Databaseprofilering i IRI Workbench

  2. Forældede funktioner til at tage ud af din værktøjskasse – Del 2

  3. Bevar tidszone i PostgreSQL timestamptz type

  4. Hvordan sætter jeg backticks i et kolonnenavn kaldet key for hibernate