> On Jul 1, 2015, at 9:34 AM, Dmitry Yemanov <firebi...@yandex.ru> wrote: > > 01.07.2015 13:49, Vlad Khorsun wrote: > >>> Not sure what you mean by same? Let's say I change it from smallint to int. >> >> All kind of numbers have the same representation in index keys. > > Except BIGINT, IIRC. >
Which was a mistake on Borland's part. InterBase originally had an eight byte integer (called a quad) that supported the VAX datatype. Indexes on quad used the same representation as other numeric types - a mutilated double precision. Since InterBase & Firebird always retrieve a range of values to make up for the imprecise conversion from decimal fractions to binary fractions, the loss of precision doesn't matter. If the Borland engineers had really thought about it, they could have added a few extra bits at the end of the key to handle the exact precision, but instead they decided to add a new index key type. On some ODS change it might make sense to go back to a single format for all numeric indexes to make enlarging numbers easier. Cheers, Ann ------------------------------------------------------------------------------ Don't Limit Your Business. Reach for the Cloud. GigeNET's Cloud Solutions provide you with the tools and support that you need to offload your IT needs and focus on growing your business. Configured For All Businesses. Start Your Cloud Today. https://www.gigenetcloud.com/ Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel