我只乘下最后一分,很简单的存储过程,如何构造动态的sql语句

 所属目录:Java   |   类型:技术问答   |   时间:2007-05-21
 问题:

 
  服务器:   消息   170,级别   15,状态   1,过程   cf_readnews,行   21  
  第   21   行:   022   附近有语法错误。  
  服务器:   消息   170,级别   15,状态   1,过程   cf_readnews,行   23  
  第   23   行:   1   附近有语法错误。  
   
   
  alter         procedure   cf_readnews  
   
  @types   nvarchar(1),  
  @brandname   nvarchar(10),  
  @number   int   --读取新闻的条数  
   
  /**  
  ***   @types=1   读试车报告新闻,否则读取整个新闻  
  **/  
   
  as  
     
  declare   @sql   nvarchar(500)  
  if   (@types=1)  
     
  set   @sql=select   top+   @number+     newsid,title,titlecolor,releasedt,url,path     from   tbl_news   where   left(folderid,3)=022   and   status=1   and   auditor   <>   null   and   keyword   like   %+   @brandname+   %     order   by   newsid   desc  
  else  
  set   @sql=select   top+   @number+     newsid,title,titlecolor,releasedt,url,path     from   tbl_news   where     status=1   and   auditor   <>   null   and   keyword   like   %+   @brandname+   %     order   by   newsid   desc

· 网友精彩回答:

发表者:vivianfdlpw

create       procedure   cf_readnews  
   
  @types   nvarchar(1),  
  @brandname   nvarchar(10),  
  @number   int   --读取新闻的条数  
   
  /**  
  ***   @types=1   读试车报告新闻,否则读取整个新闻  
  **/  
   
  as  
     
  declare   @sql   nvarchar(500)  
  if   (@types=1)  
  set   @sql=select   top+   convert(varchar,@number)+     newsid,title,titlecolor,releasedt,url,path     from   tbl_news   where   left(folderid,3)=022   and   status=1   and   auditor   is   not   null   and   keyword   like   %+   @brandname+   %+     order   by   newsid   desc  
  else  
  set   @sql=select   top+   convert(varchar,@number)+     newsid,title,titlecolor,releasedt,url,path     from   tbl_news   where     status=1   and   auditor   is   not   null   and   keyword   like   %+   @brandname+   %+     order   by   newsid   desc  
 

.
处理 SSI 文件时出错
© 2006-2008 All Rights Reserved