存储过程错误 [英] Store procedure error
本文介绍了存储过程错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
错误:将数据类型varchar转换为int.
Error: converting data type varchar to int.
ALTER PROCEDURE [dbo].[SP_City]
(
@CityID int = null,
@Flag int = 0,
@WhereCondition varchar(200)=null,
@OrderByExpression varchar(20)=null
)
AS
SET NOCOUNT ON
BEGIN
ELSE IF @Flag = 4 -- SELECT ALL
BEGIN
declare @Query varchar(200);
set @Query='Select *from City WHERE ' +@WhereCondition+ ' ORDER BY ' +@OrderByExpression;
exec SP_City @Query
END
ELSE IF @Flag = 5 -- SELECT SINGLE
BEGIN
-- Select Particular Record Block here
Select * FROM City WHERE CityID = @CityID
END
END
推荐答案
尝试以下操作:
Hi,
Try this:
ALTER PROCEDURE [dbo].[SP_City]
(
@CityID int = null,
@Flag int = 0,
@WhereCondition varchar(200)=null,
@OrderByExpression varchar(20)=null
)
AS
SET NOCOUNT ON
BEGIN
ELSE IF @Flag = 4 -- SELECT ALL
BEGIN
declare @Query varchar(200);
set @Query='Select *from City WHERE ' +@WhereCondition+ ' ORDER BY ' +@OrderByExpression;
EXEC (@Query) --Here was the error.
END
ELSE IF @Flag = 5 -- SELECT SINGLE
BEGIN
-- Select Particular Record Block here
Select * FROM City WHERE CityID = @CityID
END
END
--Amit
--Amit
这篇关于存储过程错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文