默认情况下,Mysql2将位列读取为字符串。
我的架构:
在Ruby中:
如何将它们作为字节读取?
答案 0 :(得分:1)
在Mysql库中可能有更好的方法来处理它,但根据我的经验,字符串是Ruby处理二进制数据的方式。二进制文件阅读器方法也做同样的事情。
查看#unpack
方法。你可以这样做:
[16] pry(main)> bytes = "\x00\x01\x02"
=> "\u0000\u0001\u0002"
[17] pry(main)> bytes.unpack('C*')
=> [0, 1, 2]
答案 1 :(得分:0)
我希望Mysql2默认将该位转换为字节。但截至目前它并没有这样做(我使用的是0.3.16)。我最终做的是自己将其转换为字节:
row[:can_sell].bytes => [0]