我正在使用MySQL Connector / Net v.6.6.5从远程MySql数据库将数据提取到我的.Net应用程序中。从MySql数据库中读取的一列是tinyint(1)数据类型,包含0-5的值。问题是连接器将此列类型读取为bool(true / false)而不是int。因此,大于0的所有内容都将作为一个返回。这是个大问题。我没有改变数据库列的奢侈。
答案 0 :(得分:1)
以下是我最终使用的解决方案。我的原始查询是:
SELECT tinyint_column FROM table_with_a_tinyint
使用MySql.data.dll驱动程序返回TRUE或FALSE,可以很容易地将其转换为1或0.但是从tinyint(1)列读取的数据包含0-5。我可以通过编辑下面的查询来提取正确的值:
SELECT (tinyint_column+0) FROM table_with_a_tinyint
这从MySql tinyint列产生了正确的值(0-5)。希望它能帮助将来处于相同情况的人。