日期:2014-05-16  浏览次数:20840 次

一个创建mysql存储过程的错误,请帮忙看看
drop procedure if exists net_disk.p_dir_info;
delimiter$$
# username:用户名(需传入的参数) path: 目录路径(需传入的参数)
create definer=root@localhost procedure net_disk.p_dir_info(in username varchar(20), in path varchar(255))  
begin
select * from
(
  #找出目录的信息:目录的使用者、路径、目录、创建时间、文件数量、文件大小
  select d.username, d.path, d.dir, d.create_time,
#该目录内的文件的数量
(case isnull(sum(f.count)) when true then 0 else sum(f.count) end) as count,
#目录内的所有文件的总大小
(case isnull(sum(f.size)) when true then 0 else sum(f.size) end) as size
  from t_directories d left join
(select file_parent_path, count(filename) as count, sum(size) as size from t_files group by file_parent_path) f
on f.file_parent_path=d.path
  where d.username=username and d.path=path 
 )dir order by d.create_time;
 end  
delimiter;
程序总是提醒我delimiter$$这句错误,真是百思不得其解,请知道的兄弟帮帮忙,诚谢!
delimiter$$
。。。。。
delimiter;
定界符的使用没错吧?


------解决方案--------------------
end 后加 $$

delimiter; 中间加空格。