mysql中的tinyint在c#中显示为boolean值

时间:2013-10-29 05:27:30

标签: c# mysql ado.net tinyint

我的查询从mysql中的表中获取tinyint(1)字段,如下所示

mysqlcommand.selectquery="select vehicletype from vehicles where id=1"

vehicletype的可能值为1到7

但该字段的datatable行的输出显示为boolean

datatable dtresult;
mda.Fill(dtResult);
DataRow dr = dtResult.Rows[0];
//dr["vehicletype "]=false if 0
//dr["vehicletype "]=true if 1
//dr["vehicletype "]=true if 2
//dr["vehicletype "]=true if 3
//dr["vehicletype "]=true if 4 etc...

当我在visual studio中看到dr["vehicletype "]的值时,它显示为false表示0,true表示任何其他值。如何防止默认转换

1 个答案:

答案 0 :(得分:0)

参考:

https://bugs.mysql.com/bug.php?id=67381

  

您可以添加到您的连接字符串   "将Tiny As视为布尔= false;"

     

现在tinyint将被解释为C#中的sbyte类型。