日期:2014-05-19  浏览次数:20620 次

存储过程出错,请帮忙解决!
在网上看到一个有关公交线路查询的例子,表结构如下:
        ID                       Stataion                             Orders
        1路                         鼓楼                                     1
        1路                         新街口                                 2
        1路                         汽车站                                 3
        1路                         火车站                                 4
        2路                         新街口                                 1
        2路                         飞机场                                 2
        2路                         天安门                                 3
        3路                         天安门                                 1
        3路                         石门坎                                 2
        3路                         驾校                                     3

存储过程如下:
CREATE   PROC   p_qry1
@id   varchar(200)
as
begin
declare   @e     varchar(8000)
set   @e= ' '
select   @e=@e+ '-> '+Station     from   T_line   where   ID=@id   order   by   Orders
set   @e=stuff(@e,1,2, ' ')  
return   (@e)
end
GO
执行exec   p_qry1   '1路 '
出现如下错误:
服务器:   消息   245,级别   16,状态   1,过程   p_qry1,行   9
将   varchar   值   '鼓楼-> 新街口-> 汽车站-> 火车站 '   转换为数据类型为   int   的列时发生语法错误。


------解决方案--------------------
CREATE PROC p_qry1 (
@id varchar(2000))
as
begin
declare @e varchar(100)
set @e= ' '
select @e=@e+ &#