我打开了SQL-server Profiler,这次执行导致错误。
exec sp_executesql N'SELECT * FROM fn_ProjectionInventory (@VendorKey
,@DeptView
,@ProdEK )', N'@VendorKey nvarchar(6),@DeptView nvarchar(5),@ProdEK nvarchar(2)', @VendorKey=N'100106',@DeptView=N'30003',@ProdEK=N'10'
执行时输出此错误:
“将varchar值'1236 SGPNL'转换为数据类型int时转换失败。”
从哪里获得“1236 SGPNL”?我熟悉SQL语法,但我不熟悉使用sp_executesql执行查询。
感谢任何帮助。
谢谢。
答案 0 :(得分:0)
我打赌功能本身就是问题所在。
检查fn_ProjectionInventory
的定义,您可能会发现执行失败的隐式转换。
尝试运行此操作,看看是否收到同样的错误:
select * from mydb.dbo.fn_ProjectionInventory(N'100106',N'30003',N'10')