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

存储过程用IF语句出错解决思路

2012-03-17 
存储过程用IF语句出错SQL codeset ANSI_NULLS ONset QUOTED_IDENTIFIER ONGO--

存储过程用IF语句出错

SQL code
set ANSI_NULLS ONset QUOTED_IDENTIFIER ONGO-- ================================-- ================================ALTER PROCEDURE [dbo].[usp_OQC_BadChart](    @B_Yer varchar(4),    @B_Month varchar(2),    --@B_Type varchar(30),    @B_Class char(1))ASif(@B_Class=='1'){select BadContent,count(1) as BNOfrom T_OQC_ProductionPlanwhere Year(OQCTime)=@B_Yer and month(OQCTime)=@B_Month and BadContent!='无' and Models like 'DVS%'group by BadContent}else{select BadContent,count(1) as BNOfrom T_OQC_ProductionPlanwhere Year(OQCTime)=@B_Yer and month(OQCTime)=@B_Month and BadContent!='无' and Models like 'DXM%'group by BadContent}


提示错误

消息 102,级别 15,状态 1,过程 usp_OQC_BadChart,第 12 行
'=' 附近有语法错误。
消息 102,级别 15,状态 1,过程 usp_OQC_BadChart,第 18 行
'}' 附近有语法错误。
消息 102,级别 15,状态 1,过程 usp_OQC_BadChart,第 25 行
'}' 附近有语法错误。

[解决办法]
SQL code
ALTER PROCEDURE [dbo].[usp_OQC_BadChart](    @B_Yer varchar(4),    @B_Month varchar(2),    --@B_Type varchar(30),    @B_Class char(1))ASif(@B_Class='1')select BadContent,count(1) as BNOfrom T_OQC_ProductionPlanwhere Year(OQCTime)=@B_Yer and month(OQCTime)=@B_Month and BadContent!='无' and Models like 'DVS%'group by BadContentelseselect BadContent,count(1) as BNOfrom T_OQC_ProductionPlanwhere Year(OQCTime)=@B_Yer and month(OQCTime)=@B_Month and BadContent!='无' and Models like 'DXM%'group by BadContent
[解决办法]
SQL code
declare @i int set @i=1if(@i=1) --用一个等号就行select 'a' 

热点排行