On 09/15/12 21:22, Adriano dos Santos Fernandes wrote: > On 15-09-2012 14:02, Carlos H. Cantu wrote: >> Example: >> >> create table a ( >> field1 computed by (field2 * 0.5), >> field2 numeric (9,2) >> ); >> >> returns: >> >> Column does not belong to referenced table. >> Dynamic SQL Error. >> SQL error code = -206. >> Column unknown. >> FIELD2. >> At line 2, column 22. >> >> BUT >> >> create table a ( >> field2 numeric (9,2), >> field1 computed by (field2 * 0.5) >> ); >> >> Works fine. >> > Ideally (but DDL and ideally has a great distance) it should work. > > I consider that all DDL validations should be done as "After this > command is executed, will the database state be valid?"
Mentioned trick might be done using gdef. But one had to explicitly provide order of fields in relation, something like: define relation TRANSMSGS FAC_CODE position 2, NUMBER position 3, CODE computed by (fac_code * 10000 + number) position 1; I do not suggest to add explicit position to DDL - just curious. And yes - it will be nice to fix DDL to make it perform validations after all command is parsed, not for each field. ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel