2015-05-25 63 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(*)