摘要: 下午被数据库搞的莫名奇妙,总是出现如下错误:Syntax error converting the nvarchar value to a column of data type int 最后发现原因是在存储过程中return的值只能是简单类型int型,浪费了不少时间,现在把自己的遇到的知识总结下:
1.在存储过程中执行带output型的存储过程 在sqlserver自带的sp dbo.dt_displayoaerror中有示例
2.在数据库中,未赋值是null, 他和 '' 是不同的,不像一些语言会给字符型变量赋值为空. 因此对于为null的变量要通过 @temp=null来判断,或者用isnull函数.
3.关于存储过程的Return value和Output value.return值只能是数字型,但如果一个nvarchar类型的变量,且该变量中是数字可以隐式地转换为数字时,那么他将可以作为return值.同理,其他类型变量也一样.
阅读全文