我的查询从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
表示任何其他值。如何防止默认转换
答案 0 :(得分:0)
参考:
https://bugs.mysql.com/bug.php?id=67381
您可以添加到您的连接字符串 "将Tiny As视为布尔= false;"
现在tinyint将被解释为C#中的sbyte类型。