Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Σφάλμα στη σύνταξη SQL σε Stored Procedure σε MySQL server 5.0

Îåêßíçóå áðü ôï ìÝëïò kiki. Τελευταία δημοσίευση από το μέλος kiki στις 19-12-2008, 15:13. Υπάρχουν 0 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  19-12-2008, 15:13 47011

    Σφάλμα στη σύνταξη SQL σε Stored Procedure σε MySQL server 5.0

    Γεια σε όλους,
    αντιμετωπίζω ένα πρόβλημα κατά τη δημιουργία Stored Procedure:

    DELIMITER $$

    DROP PROCEDURE IF EXISTS `orders`.`DeleteNode` $$
    CREATE PROCEDURE `orders`.`DeleteNode` (IN downsized VARCHAR(50))
    LANGUAGE   SQL
    DETERMINISTIC
    BEGIN
    DECLARE drop_name VARCHAR(50);
    DECLARE drop_lft INTEGER;
    DECLARE drop_rgt INTEGER;

    SET drop_name = (SELECT   name FROM   orders WHERE  name = downsized);
    SET drop_lft = (SELECT   lft FROM   orders WHERE  name = downsized);
    SET drop_rgt = (SELECT   rgt FROM   orders WHERE  name = downsized);

    DELETE   FROM  orders
    WHERE   orders.lft = drop_lft;

    UPDATE  orders
    SET lft = (SELECT COUNT(*)
              FROM (SELECT lft FROM orders
                    UNION ALL
                    SELECT rgt FROM orders) AS LftRgt (seq)
              WHERE seq <= lft),
        rgt = (SELECT COUNT(*)
              FROM (SELECT lft FROM orders
                    UNION ALL
                    SELECT rgt FROM orders) AS LftRgt (seq)
              WHERE seq <= rgt);
    END $$

    DELIMITER ;


    Το σφάλμα που υπάρχει και δεν την εκτελεί είναι κάπου στo
    AS LftRgt (seq) και μου βγάζει το μήνυμα:

    You have an error in your SQL syntax;
    near '(seq)
              WHERE seq <= lft),
        rgt = (SELECT COUNT(*)
                FROM'

    Αν μπορει να βοηθήσει κάποιος, θα το εκτιμούσα πολύ.
    Ευχαριστώ



Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems