C# MySql.Net连接器似乎向DataTable返回了错误的类型

C# MySql.Net连接器似乎向DataTable返回了错误的类型,c#,mysql,C#,Mysql,我在MySQL表中有一列定义为int(11)。在用select语句“填充”DataTable之后,DataTable的相应列的类型为Int64!有人见过这种行为吗?我希望这个专栏是一个Int32 我没有对此进行测试,但发现这解释了int(11)的含义,它可能与您的问题无关,但更多的是一个旁注: 是的,这就是他的观点——尽管声明为INT(11),但在mysql中仍然只有32位,因此数据类型应该是Int32。我怀疑mysql特定的知识在某个地方丢失了,相反,代码将其视为一个通用的11位整数-这确实需

我在MySQL表中有一列定义为int(11)。在用select语句“填充”DataTable之后,DataTable的相应列的类型为Int64!有人见过这种行为吗?我希望这个专栏是一个Int32

我没有对此进行测试,但发现这解释了int(11)的含义,它可能与您的问题无关,但更多的是一个旁注:


是的,这就是他的观点——尽管声明为INT(11),但在mysql中仍然只有32位,因此数据类型应该是Int32。我怀疑mysql特定的知识在某个地方丢失了,相反,代码将其视为一个通用的11位整数-这确实需要Int64。您可以指定mysql和connector/.net版本吗?我使用连接器6.1.3运行5.0.51a-24+lenny4,得到了预期的Int32类型。我使用MySQL 5.1.25和连接器6.0.3,也不一致。在同一个表中,一些int(11)字段被正确地返回为Int32,而另一些字段返回为Int64——这太奇怪了!