我有一个仅从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函数