Hi2All
Когда начал разбираться с Yaffil, с удивлением обнаружил, точнее не обнаружил, булева типа данных. Создал домен:
bool char(1) DEFAULT 'y' NOT NULL CHECK(value='y' OR value='n')
Но это все равно изврат :-\
К тому же возникают проблемы при работе с дотнетом - там приходится ручками перегонять типы.
Подскажите, плиз, как разрулиться правильно?
Использование булева типа в БД
Модератор: kdv
я вполне серьезно. булевский тип в базе имеет очень мало смысла. Посмотри на булевский тип в IB 7. Когда его не было, народ кричал "хотим!". Когда он появился, все быстро увяли.
можешь почитать топик для примера:
http://forum.ibase.ru/phpBB2/viewtopic. ... ht=boolean
для дотнета скорее всего надо использовать драйвер FB. Куда и чего конвертировать - не понял, приведи пример. Скорее всего твой вопрос может быть трансформирован в просьбу авторам драйвера. В настоящее время, вроде как, введение типа boolean FB 2 не планируется.
можешь почитать топик для примера:
http://forum.ibase.ru/phpBB2/viewtopic. ... ht=boolean
для дотнета скорее всего надо использовать драйвер FB. Куда и чего конвертировать - не понял, приведи пример. Скорее всего твой вопрос может быть трансформирован в просьбу авторам драйвера. В настоящее время, вроде как, введение типа boolean FB 2 не планируется.
Разобрался я с ситуацией.
Разрулиться с булевыми значениями можно следующим макаром:
В таблице создать поле типа int, в котором любое ненулевое значение будет означать TRUE, а нулевое FALSE. Также, как FALSE трактуется поле со значением NULL.
В приложении, при инициализации DataTable поле должно быть объявлено с типом bool:
protected DataTable dt = new DataTable("DT");
dt.Columns.Add("my_bool", typeof(bool));
da.Fill(dt);
Разрулиться с булевыми значениями можно следующим макаром:
В таблице создать поле типа int, в котором любое ненулевое значение будет означать TRUE, а нулевое FALSE. Также, как FALSE трактуется поле со значением NULL.
В приложении, при инициализации DataTable поле должно быть объявлено с типом bool:
protected DataTable dt = new DataTable("DT");
dt.Columns.Add("my_bool", typeof(bool));
da.Fill(dt);