PostgreSQL,布尔类型的问题存储值为“T”和“F”破坏ORM

时间:2011-07-23 17:43:30

标签: postgresql npgsql dapper

如果我在Postgres表中定义一个布尔数据类型并从中查询,则布尔列的结果将返回为“t”或“f”。

我使用NPGSQL作为我的驱动程序,使用Dapper作为ORM。这会导致问题,因为Dapper无法将“t”或“f”转换为布尔值,并且所有布尔值最终都为False。

有没有办法用Postgres改变这种行为,还是我需要使用字符数据类型来破解它?

1 个答案:

答案 0 :(得分:4)

将其转换为整数以获得0或1

SELECT boolean_value::INT ;

或varchar获取'true'或'false'。

SELECT boolean_value::VARCHAR ;

大多数数据库驱动程序应该能够处理其中一个。