Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

Syntaxfehler mysql function

Dieses Thema im Forum "MySQL und MariaDB" wurde erstellt von Sermane, 16 Juni 2017.

  1. Sermane

    Sermane Neuer Benutzer

    Hallo,

    entschuldigt bitte aber ich kann hier nicht erkennen was der Fehler ist. Folgender Fehler wird geworfen:

    at line 1: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 14

    Ich bin relativ neu und unerfahren und weiß nicht was hier das Problem sein soll:


    CREATE DEFINER=`foo`@`%` FUNCTION `xy`(
    `xxxx` INT,
    `yyyyyyy` INT

    )
    RETURNS tinyint(1)
    LANGUAGE SQL
    NOT DETERMINISTIC
    CONTAINS SQL
    SQL SECURITY INVOKER
    COMMENT 'some comment'
    BEGIN

    DECLARE found_id int; // LINE 14
    DECLARE current_p_id int;
    DECLARE current_id int;
    DECLARE CONTINUE HANDLER FOR NOT FOUND BEGIN END;
    SET current_id = -1;

    SELECT something into some FROM sometable WHERE id = xxxx;
    WHILE ...
    ...
    END WHILE;

    IF current_id = -1 THEN SET current_id = xxxx; END IF;

    RETURN 0;

    END

    Vielen Dank für eure Hilfe
     
  2. ukulele

    ukulele Datenbank-Guru

    Ich weiß nicht wie MySQL Kommentare im Quelltext kenntlich macht, bei MSSQL wäre es --. Du verwendest \\ , das scheint ihm nicht zu gefallen.
     
  3. akretschmer

    akretschmer Datenbank-Guru

    ich denke mal, dieser Kommentar (es war // und nicht \\, aber egal) ist nur für Dich gewesen, damit Du die Zeile 14 besser findest ;-)

    Anyway, es ist oft und wohl auch hier nicht zielführend, nicht via Copy&Paste den *exakten* Quelltext zu zeigen, sondern nur etwas, was *so ähnlich* aussieht.
     
    BerndB gefällt das.
  4. Sermane

    Sermane Neuer Benutzer

    ich hab mittlerweile den fehler gefunden. das problem ist der delimiter ; (semikolon) , wenn ich einen anderen Delimiter explizit angebe passt es
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden