Най-вероятно нямате нужда от DELIMTER
команда. Това принадлежи на MySQL-ориентирани клиентски програми.
Моля, опитайте с обикновени стари точки и запетая:
if (!$mysqli->query("DROP PROCEDURE IF EXISTS p") ||
!$mysqli->query("CREATE PROCEDURE p(IN id_val INT) BEGIN INSERT INTO test(id) VALUES(id_val); END;")) {
echo "Stored procedure creation failed: (" . $mysqli->errno . ") " . $mysqli->error;
}
и нека PHP да се тревожи за разделянето
ПРЕДУПРЕЖДЕНИЕ
Получих горния код от http://php.net/manual /en/mysqli.quickstart.stored-procedures.php