hallo zusammen
ich stelle meine anfrage bewusst ins php developer forum und nicht ins mysql forum. es geht zwar um eine mysql function aber ich möchte sie aus einem php script erstellen.
also ich habe eine kleine test() stored function für mysql. wenn ich dieses CREATE FUNCTION statement via irgend einem lokalen mysql-client (sqlyog oder so was) gegen meine lokale mysql datenbank laufen lasse, wird diese auch schön angelegt (und funktioniert dann natürlich auch)
nun ist es so dass mein provider nur myphpadmin zulässt und ich da KEINE stored procedures/functions erstellen kann.
nun meine idee: ich erstelle mir eine php datei, lege diese auf den webserver und lasse mir die stored function via php erstellen.
leider immer mit einem return code -1
Also mein Script sieht so aus:
[COLOR=orangered]
DELIMITER $$
DROP FUNCTION IF EXISTS `db1`.`test`$$
CREATE function `db1`.`test` () returns varchar(200)
BEGIN
DECLARE vOut varchar(200);
DECLARE vTemp varchar(200);
DECLARE cur1 CURSOR FOR select 'kommt von der datenbank' from dual;
OPEN cur1;
FETCH cur1 INTO vTemp;
SET vOut = vTemp;
CLOSE cur1;
return ifnull(vOut,'-');
END$$
DELIMITER ;
[/COLOR]
kann mir jemand sagen wie ich dieses ganze zeugs via php gegen die db absetzen kann? grundsätzlich weiss ich wie man SELECTS usw. gegen mysql aus php ausführt. nur leider blos nicht das mit CREATE FUNCTION oder CREATE PROCEDURE
danke
ich stelle meine anfrage bewusst ins php developer forum und nicht ins mysql forum. es geht zwar um eine mysql function aber ich möchte sie aus einem php script erstellen.
also ich habe eine kleine test() stored function für mysql. wenn ich dieses CREATE FUNCTION statement via irgend einem lokalen mysql-client (sqlyog oder so was) gegen meine lokale mysql datenbank laufen lasse, wird diese auch schön angelegt (und funktioniert dann natürlich auch)
nun ist es so dass mein provider nur myphpadmin zulässt und ich da KEINE stored procedures/functions erstellen kann.
nun meine idee: ich erstelle mir eine php datei, lege diese auf den webserver und lasse mir die stored function via php erstellen.
leider immer mit einem return code -1
Also mein Script sieht so aus:
[COLOR=orangered]
DELIMITER $$
DROP FUNCTION IF EXISTS `db1`.`test`$$
CREATE function `db1`.`test` () returns varchar(200)
BEGIN
DECLARE vOut varchar(200);
DECLARE vTemp varchar(200);
DECLARE cur1 CURSOR FOR select 'kommt von der datenbank' from dual;
OPEN cur1;
FETCH cur1 INTO vTemp;
SET vOut = vTemp;
CLOSE cur1;
return ifnull(vOut,'-');
END$$
DELIMITER ;
[/COLOR]
kann mir jemand sagen wie ich dieses ganze zeugs via php gegen die db absetzen kann? grundsätzlich weiss ich wie man SELECTS usw. gegen mysql aus php ausführt. nur leider blos nicht das mit CREATE FUNCTION oder CREATE PROCEDURE
danke
Kommentar