PostgreSQL, проблемы с булевыми типами хранения значений как «T» и «F», нарушающие ORM - PullRequest
2 голосов
/ 23 июля 2011

Если я определяю логический тип данных в таблице Postgres и запрашиваю из него, результаты для логических столбцов возвращаются как «t» или «f».

Я использую NPGSQL в качестве драйвера и Dapper в качестве ORM. Это вызывает проблему, потому что Dapper не может преобразовать «t» или «f» в логическое значение, и все логические значения заканчиваются как False.

Есть ли способ изменить это поведение с Postgres, или мне нужно взломать его, используя символьный тип данных?

1 Ответ

4 голосов
/ 23 июля 2011

Приведите его к целому числу, чтобы получить 0 или 1

SELECT boolean_value::INT ;

или varchar, чтобы получить 'true' или 'false'.

SELECT boolean_value::VARCHAR ;

Большинство драйверов БД должны обрабатывать один или другой.

...