> 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

Reply via email to