Few oddities when working with Firebird v3

When creating model from a Firebird v3 database, few issues occur.

1a. DM correctly detects the use of domains, but does not take into consideration domain's NOT NULL constraint, so it has to be added manually to database field definitions in order for DM to properly detect and use them.

For example, if this is used
CREATE DOMAIN D_NAME AS VARCHAR(20) NOT NULL;
CREATE TABLE SOMETBL(
...
SOMENAME D_NAME,
...
);
DM will import SOMENAME as nullable string, even though domain constraint is in effect.

1b. DM does not properly display field properties when domains are used: for fields with key constraints "Domain" is often (not always!) grayed and ommited completely. For all fields, "Logic type" is properly set, but "Size" and "Precision" are left blank (for varchar and double precision, for example).

1c. Check constraints are not properly read from domain definitions and seem to be ignored.

2. When building Aurelius mappings, no generators are set, even though they are all listed in "Mappings"->"Advanced"->"Sequence/generator for Id" combo box, so it's obvious that they are recognized. They all have to be manually set, which is tedious and time consuming, especially for databases with many tables.

Not major issues, so I assume they can be easily corrected.

Kind regards,
Sute informatika jdoo

Hello,

We will investigate the DOMAIN issues and let you know.
Regarding item 2, Data Modeler doesn't have a way to know which generator is associated with which table, that's the reason why you have to set them manually (even though you can always use customization scripts to automate the source code generation).

Thank you for the answer.

I agree, since there are many different SQL dialects and working with sequences/generators would in many cases involve messing with system tables, so it's not so easy to implement that feature to be fully automated.

We have released Data Modeler 3.2.1 with fixes for the mentioned domain issues.

Thank you. Glad to be of help.