基于表中的数据,SQL Server Ce 2005数据转换失败
我有一个类似这样的问题:基于表中的数据,SQL Server Ce 2005数据转换失败,sql,sql-server,Sql,Sql Server,我有一个类似这样的问题: select * from table where varchar_column=Numeric_value 在我运行插入脚本之前,这很好。插入新数据后,我必须使用此查询: select * from table where varchar_column='Numeric_value' 插入某种数据是否会导致它不再隐式转换? 插入脚本后,错误为数据转换失败OLEDB Status=2 第二个查询确实有效我不确定这一点。。。第一种可能是将varcha
select * from table where varchar_column=Numeric_value
在我运行插入脚本之前,这很好。插入新数据后,我必须使用此查询:
select * from table where varchar_column='Numeric_value'
插入某种数据是否会导致它不再隐式转换?
插入脚本后,错误为数据转换失败OLEDB Status=2
第二个查询确实有效我不确定这一点。。。第一种可能是将varchar_列隐式转换为数值。而不是相反。但当您将不再可转换的值插入该列时,它将失败。然而,对于第二个,你正在做一个varchar到varchar的比较,世界上的一切又恢复了正常。我猜。听起来它会尝试将列值转换为数字,而不是将数字值转换为varchar并将其与列值进行比较-这似乎是它的作用,现在,我在插入脚本数据中发现,varchar_列中有字符,因此无法将其转换为numberit,这有点奇怪,但如果仔细想想,它确实有意义。如果从varchar到decimal/numeric,而不是相反,则比较可能更正确。。。由于1.1可以用无限的varchar值表示。。。即1.10、1.100、1.1000等。