嗨,我正在使用hibernate和Mysql.我有一个名为'active'的布尔属性的类.
生成的数据库表具有BIT数据类型.到现在为止还挺好.我想查询这个值,但我不知道该怎么做.我试过了
SELECT * from table where active = 1
Run Code Online (Sandbox Code Playgroud)
不起作用,以下都不起作用
SELECT * from table where active = true
Run Code Online (Sandbox Code Playgroud)
我在参考手册和Stackoveflow中都没有找到任何内容.
任何提示?
提前致谢!
And*_*mar 18
根据这个页面,对于5.0.3之前的版本,BIT是TINYINT(1)的同义词.
你试过这些吗?
SELECT * from table where active = (1)
SELECT * from table where active = 'true'
SELECT * from table where active = b'1'
Run Code Online (Sandbox Code Playgroud)
此博客条目建议完全避免使用BIT数据类型.
您是否尝试将其转换为Integer进行比较
SELECT * from table where cast(active as unsigned) = 1
Run Code Online (Sandbox Code Playgroud)
我大部分时间都使用MS SQL,请原谅我,如果这不起作用,因为我无法测试它.