The FbDatabaseModelFactory does not support NUMERIC datatype and uses DECIMAL as fallback. This can cause data precision loss. Adding case ``` SQL WHEN 1 THEN 'NUMERIC(' || (F.RDB$FIELD_PRECISION) || ',' || ABS(F.RDB$FIELD_SCALE) || ')' ``` to [field type case](https://github.com/FirebirdSQL/NETProvider/blob/f169563ec05067c55974d2dfe09ff4f64cfd05d9/src/FirebirdSql.EntityFrameworkCore.Firebird/Scaffolding/Internal/FbDatabaseModelFactory.cs#L145) 7, 8 and 16 should resolve this. --- ### Additional notes: - Would it generally not be better to use the explicit case (2) for decimal and return '?' for default cases? - Precision and scale of DECIMAL data type are not returned. Intention? --- ### Sources: - [Language Reference v3.0 - 3.3 Fixed-Point Data Types](https://firebirdsql.org/file/documentation/chunk/en/refdocs/fblangref30/fblangref30-datatypes-fixedtypes.html) - [Language Reference v3.0 - Appendix D: System Tables - RDP$FIELDS](https://firebirdsql.org/file/documentation/html/en/refdocs/fblangref30/firebird-30-language-reference.html#fblangref-appx04-fields)