如果我在Postgres表中定义一个布尔数据类型并从中查询,则布尔列的结果将返回为“t”或“f”。
我使用NPGSQL作为我的驱动程序,使用Dapper作为ORM。这会导致问题,因为Dapper无法将“t”或“f”转换为布尔值,并且所有布尔值最终都为False。
有没有办法用Postgres改变这种行为,还是我需要使用字符数据类型来破解它?
答案 0 :(得分:4)
将其转换为整数以获得0或1
SELECT boolean_value::INT ;
或varchar获取'true'或'false'。
SELECT boolean_value::VARCHAR ;
大多数数据库驱动程序应该能够处理其中一个。