簡體   English   中英

MySQL-存儲過程語法錯誤

[英]MySQL - Stored Procedure Syntax Error

下面的“程序”有什么問題使我無法創建此存儲過程? 任何幫助或清理建議都很好。

DELIMITER $$
DROP PROCEDURE IF EXISTS baixa_estacio;
CREATE PROCEDURE baixa_estacio (IN id int(11))
BEGIN
    DECLARE estacio2 INT;
    DECLARE temps1 TIME(7);
    DECLARE dist1 FLOAT;
    DECLARE estacio1 INT;
    DECLARE estacio3 INT;
    DECLARE temps2 TIME(7);
    DECLARE dist2 FLOAT;
    SELECT id_estacioescomunica, temps, distancia INTO estacio2, temps1, dist1 FROM escomunica WHERE escomunica.id_estacioescomunica= id;
    SELECT id_estaciocomunicada,id_estacioescomunica,temps,distancia INTO estacio1,estacio3, temps2, dist2 FROM escomunica WHERE escomunica.id_estacioescomunicada = id;
    DELETE FROM escomunica WHERE ((id_estacioescomunica = id)  AND (EsTransbordament)=1);
    DELETE FROM escomunica WHERE ((id_estaciocomunicada = id) AND (EsTransbordament)=0);
    UPDATE escomunica SET id_estacioescomunica =  estacio3, temps = SEC_TO_TIME(( TIME_TO_SEC (temps1) + TIME_TO_SEC (temps2))), distancia - (dist1 + dist2) WHERE ((id_estacioescomunica-id)AND(estransbordament)=0);
    END;
    $$
    DELIMITER;

我不知道有什么問題。 消息錯誤顯示下一個:

1064-您的SQL語法有誤; 檢查與您的MySQL服務器版本相對應的手冊,以在'CREATE PROCEDURE baixa_estacio(IN id INT)BEGIN DECLARE estacio2 INT附近使用正確的語法; '在第2行

您必須使用定義的定界符終止查詢異地存儲過程。 例如, DROP PROCEDURE IF EXISTS baixa_estacio$$ not ";"

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM