簡體   English   中英

如何在heidisql中創建存儲過程?

[英]How do I create a stored procedure in heidisql?

我正在嘗試在 heidisql (mysql) 中創建一個存儲過程。

CREATE PROCEDURE SP_FORM20_POST(
    P_SESSIONID     VARCHAR(256)
)
BEGIN
    INSERT INTO tbForm20
        ( SESSIONID, RegDT)
    VALUES
        ( P_SESSIONID, NOW()); 
END

這是我的查詢。 我正在嘗試創建此過程,但發生了一些錯誤:

錯誤代碼是 1064

您的 SQL 語法有錯誤; 檢查與您的 MariaDB 服務器版本相對應的手冊,以獲取在第 8 行使用 near'' 的正確語法。

但是,我不知道錯誤的語法。 怎么了?

我想在 heidisql 工具中取得成功。 我不想要其他數據庫工具。 請幫幫我。

該查詢中的問題是分號,它是默認的查詢分隔符。

為了更改 HeidiSQL 中的分隔符,在CREATE PROCEDURE查詢上方添加 DELIMITER 客戶端命令:

DELIMITER \\
SELECT 1\\
CREATE PROCEDURE ...\\
DELIMITER ;

HeidiSQL 還有一個過程設計器,不需要設置分隔符:

HeidiSQL 過程設計器

問題是這個。 數據庫讀取; 在您的代碼中作為程序的結束。 你可能不打算那樣:)。 DELIMITER命令通過更改; 到可定制的東西,比如$$ 試試這個:

DELIMITER $$
CREATE PROCEDURE SP_FORM20_POST(
    P_SESSIONID     VARCHAR(256)
)
BEGIN
    INSERT INTO tbForm20
        ( SESSIONID, RegDT)
    VALUES
        ( P_SESSIONID, NOW()); 
END$$
DELIMITER ;

試試這個

DELIMITER //

CREATE PROCEDURE SP_FORM20_POST(
    P_SESSIONID     VARCHAR(256)
)

BEGIN
    INSERT INTO tbForm20
        ( SESSIONID, RegDT)
    VALUES
        ( P_SESSIONID, NOW());

END //

DELIMITER;

暫無
暫無

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

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