2015-05-25 62 views
0

號我應該:存儲過程來計算記錄

  1. 創建一個存儲過程來算的表中的記錄數(showsite
  2. 運行的程序顯示的數目表中的記錄 下面是表的結構和它的數據:

    show_id INT不爲空, 名VARCHAR(20)NOT NULL, 地址VARCHAR(40)NOT NULL, UNIQUE(show_ ID), PRIMARY KEY(show_id)

    Show_id名稱地址 1達博23 Wingewarra街,多寶 2年輕13櫻桃巷,楊 3城堡山展覽場路,城堡山 4皇家復活節郵政信箱13,GPO悉尼

我對問題一個代碼:(有沒有問題2的套牢1中創建的代碼,它讓我瘋狂)

DELIMITER// 
create procedure site_sp 
as 
begin 
select count(*) from showsite; 
end// 
DELIMITER; 

但是當我試圖在mysql中運行它時,它總是返回語法錯誤, 有人可以闡明它嗎?

+0

有什麼語法錯誤,並在其上線會出現這種問題? –

+0

它迴避了這個:錯誤1064(42000):你的SQL語法有錯誤;請查看與我們的MYSQL服務器版本對應的手冊,以便在接近 分隔符處使用//創建過程site_sp 作爲 開始 從第1行的showsite處選擇count(*)。 – Frostless

回答

2
DELIMITER // 
DROP PROCEDURE IF EXISTS site_sp // 
CREATE PROCEDURE site_sp() 
BEGIN 
SELECT COUNT(1) FROM showsite; 
END// 
DELIMITER ; 

我喜歡count(1)count(*)