No BOOLEAN field in Firebird?
There is no built-in boolean field, but you have several options:
1. use char(1)
2. use smallint
3. use domains
Domains are probably the best solution. You can create domain like this:
CREATE DOMAIN BOOLEAN
AS SMALLINT
CHECK (value is null or value in (0, 1));
Later in table definition you can refer to it as a regular datatype.
CREATE TABLE t1
(
C1 VARCHAR(10),
B1 BOOLEAN,
B2 BOOLEAN NOT NULL,
...
);
If you use a connectivity library like OleDB under .Net, you can override the OleDB provider's GetSchema method, so the DataTables you get from queries have native .Net booleans.
沒有留言:
張貼留言