【问题标题】:MYSQL - Stored ProcedureMYSQL - 存储过程
【发布时间】:2015-11-05 12:26:11
【问题描述】:

我正在尝试使用以下代码在存储过程中创建一个临时表:

   DELIMITER $$
CREATE PROCEDURE testprocedure 

AS

BEGIN

CREATE TEMPORARY TABLE Best_MitarbeiterLieferant 
(`enter code here`
    angestellter VARCHAR (50),
    AnzahlBestellungen INT NOT NULL,
    Lieferant VARCHAR(50)

)
#Test Datensatz
INSERT INTO Best_MitarbeiterLieferant VALUES ('Stefan', 12, 'UPS')
#Testabfrage
SELECT * FROM Best_MitarbeiterLieferant

# Tabelle wieder löschen
DROP TABLE Best_MitarbeiterLieferant
END $$

DELIMITER ;

但是我遇到了一个错误,我不知道如何解决它。感谢帮助!

1064 - 您的 SQL 语法有错误;检查手册 对应于您的 MariaDB 服务器版本,以便使用正确的语法 靠近'AS BEGIN CREATE TEMPORARY TABLE Best_MitarbeiterLieferant ( 第 3 行的 angeste'

提前致谢!

【问题讨论】:

    标签: mysql sql stored-procedures


    【解决方案1】:

    试试这个:

    DELIMITER $$
    CREATE PROCEDURE testprocedure()
    BEGIN
    
    CREATE TEMPORARY TABLE Best_MitarbeiterLieferant 
    (   
        angestellter VARCHAR (50),
        AnzahlBestellungen INT NOT NULL,
        Lieferant VARCHAR(50)
    
    );
    
    #Test Datensatz
    INSERT INTO Best_MitarbeiterLieferant VALUES ('Stefan', 12, 'UPS');
    #Testabfrage
    SELECT * FROM Best_MitarbeiterLieferant;
    
    # Tabelle wieder löschen
    DROP TABLE Best_MitarbeiterLieferant;
    END $$
    
    DELIMITER ;
    

    【讨论】:

    • :嘿,这个成功了。我正准备用 ;但mysql告诉我“意外符号”但它有效!感谢您的超快速回答!
    • 我会接受这个作为答案,当它可用时。谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-01
    • 2017-04-26
    • 2011-03-09
    • 2011-03-31
    • 1970-01-01
    相关资源
    最近更新 更多