首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

这个存储过程为什么读不出数据啊郁闷,该怎么解决

2012-03-02 
这个存储过程为什么读不出数据啊?郁闷CREATEPROCEDUREPrSerchTag@tagvarchar(20)ASdeclare@idintdeclare@t

这个存储过程为什么读不出数据啊?郁闷
CREATE   PROCEDURE   PrSerchTag  
@tag   varchar(20)
AS
declare   @id   int
declare   @tagid   int
--declare   @bool   char(4)
begin
  if   exists   (select     tagid   from   tagtable   where   tagname   like     '% '+@tag+ '% ')
          begin
             
                      select   @tagid   =     tagid   from   tagtable   where   tagname   like       '% '+@tag+ '% '
                select   @id=   rizhiid   from   rizhitagtable   where   tagid   =@tagid
                select   rizhiid,yonghuname,rizhititle,substring(rizhicontent,0,200)+ '...... '   as   'rizhicontent ',rizhitime,touchnum,yonghuid   from   rizhiview   where   rizhiid=@id
        end
  else
                return   (0)


end

[解决办法]
if exists (select tagid from tagtable where tagname like '% '+@tag+ '% ')
begin

.....
-->


if exists (select tagid from tagtable where tagname like '% '+@tag+ '% ')
begin

select 1 --加上这条,执行后看看有没有执行到这句。
.....
[解决办法]
select @tagid = tagid from tagtable where tagname like '% '+@tag+ '% '
select @id= rizhiid from rizhitagtable where tagid =@tagid

tagid应可能有多个值吧,能这样输给@tagid么?
rizhiid也有可能有多个值的,不能这样给@id输值.
[解决办法]
@tagid只能是最后的一个tagid的值
@id也只能是rizhiid的最后一个值
[解决办法]
@tagid,@id 只读出一个值,建议楼主写成游标
[解决办法]
similarly answer below:

HTTP://www.ebigear.com/Fund/PlayNews.php?NewsID=28340&ID=285885

热点排行