SQL Server数据类型兼容性

时间:2011-08-14 05:10:48

标签: c# sql-server compatibility sqldatatypes

有没有办法检查某些字符串是否与某些MS SQL类型兼容? 我将在将字符串插入数据库中的表之前验证字符串。

编辑:我正在寻找一种方法来检查某些字符串是否与varchar,char,bit等兼容......

1 个答案:

答案 0 :(得分:4)

如果我正确地解释了这一点,那么您输入的字符串要存储在SQL Server数据库中,而列将是不同的类型,例如intfloat和{ {1}}。您想知道字符串是否会成功转换为适当的类型。

一种方法是使用parameterized query简单地将字符串作为参数传递给money,为参数设置适当的SQL数据类型。当您使用不会转换的数据执行命令时,您将获得SqlCommand

更明确地说,您可以尝试使用适当的SQL数据类型解析字符串。如果转换失败,它也会抛出FormatExceptions

即使你解析字符串,我仍然建议使用FormatException的参数化SQL查询,甚至更好的是像Entity Framework这样强类型的ORM层。 EF会自动将SQL类型映射到.Net类型,因此如果您尝试为实体的某个属性分配不兼容的值,则可以进行自动数据类型验证。

解析SQL数据类型的代码:

SqlCommand