小编use*_*804的帖子

将nvarchar值转换为数据类型int时转换失败

我创建了下面列出的过程:

CREATE procedure getdata
(
    @ID int,
    @frm varchar(250),
    @to varchar(250)
)
AS
BEGIN

DECLARE @SQL nvarchar(500)


set @SQL = 'select'
set @SQL = @SQL + ' EmpName, Address, Salary from Emp_Tb where 1=1 '

IF (@ID <> '' and @ID is not null)     
  Begin     
   SET @sql=@sql+' AND Emp_Id_Pk=' +@ID   
  End 
END

print @sql
--execute (@sql)
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下方法执行它:

**execute getdata 3,'','';**
Run Code Online (Sandbox Code Playgroud)

但是我收到以下错误:

将nvarchar值'select EmpName,Address,Salary从Emp_Tb转换为1 = 1 AND Emp_Id_Pk ='转换为数据类型int时转换失败

请帮忙.

sql

21
推荐指数
2
解决办法
19万
查看次数

标签 统计

sql ×1