这很简单。 SQL SERVER 2008
会自动将值转换为字符串吗?
我试过这个Select * from Staff Where Division = 5
如果我尝试插入它,它也可以
如果我改变5为五,我得到并且错误但是。 Invalid column name five
。
分部是NVARCHAR
。那5个不是单引号吗?
答案 0 :(得分:0)
是的,SQL Server将int隐式转换为nvarchar。它还可以隐式地将nvarchar转换为int(和其他数字类型)。
答案 1 :(得分:0)
很多情况下会发生隐式转换。例如:
EXEC sp_who2 active;
您是否应该将active
划分为字符串?是的,但语法是宽容的。
我的建议:始终正确划分数据类型,并忽略异常。他们得到全面修复的机会接近于零。