我有一个仅从Mysql中的列值获取无符号字节的代码。

MySqlDataReader reader = MasterServer.Instance.Sql_Connection.Reader;
reader.Read();
sbyte slot = (sbyte)reader.GetByte("slot");


表中我列的“插槽”是TINYINT(3)并标记为已签名。

但是,代码返回0,因为它应该返回-1(测试的该列中为-1)。
为什么?谢谢!

C#

最佳答案

我建议,根据列的索引,它应该为GetByte(column,...)

sbyte slot = (sbyte)reader.GetBytes(0,0,null,0);


这是sql语句如下所示:SELECT slot FROM table因此GetBytes(0,...)

SqlDataReader具有GetByte函数

10-05 20:34
查看更多