2017-06-30 86 views
0

我是MQSQL的新手,我一直在使用MSSQL,因此我的語法很具挑戰性。我得到這個錯誤在使用MYSQL創建存儲過程時遇到困難

#1064 - 你的SQL語法錯誤; ...在'聲明@side LONGTEXT'附近使用正確的語法; declare @post BIGINT(20)DEFAULT 0; @side ='7082'; '在第3行**

但窗口旁邊的select語句旁邊還有一個大紅色的X. 我有雙重檢查變量Meta_Value是LONGTEXT和POST_ID是BIGINT(20)

DROP PROCEDURE IF EXISTS DailyDishData() 

DELIMITER // 

CREATE PROCEDURE DailyDishData() 

declare @side LONGTEXT; 
declare @post BIGINT(20) DEFAULT 0; 

@side = '7082'; 

BEGIN 
select @post = post_id from `wp_dfh0payzs9_postmeta` where meta_key = 'ftrecipe_id' and meta_value = @side; 
END 

DELIMITER ; 

回答

0

你忘了/放錯地方的周圍的過程BEGINEND關鍵字

DELIMITER // 
DROP PROCEDURE IF EXISTS DailyDishData // 

CREATE PROCEDURE DailyDishData() 
BEGIN 
    declare @side LONGTEXT; 
    declare @post BIGINT(20) DEFAULT 0; 

    set @side = '7082'; 

    select @post = post_id 
    from `wp_dfh0payzs9_postmeta` 
    where meta_key = 'ftrecipe_id' and meta_value = @side; 
END 
// 

DELIMITER ; 

忽略的數據類型事實上,硬編碼號碼在程序中沒有多大意義,並且您似乎不使用變量@post

+0

您能否解釋問題所在以及您如何解決編輯它? – Barmar

相關問題