> On Mar 6, 2015, at 9:58 AM, brian br...@meadows.pair.com [firebird-support] 
> <firebird-support@yahoogroups.com> wrote:
> 
> My problem is that I must avoid duplicated records in the database,
> the unique key is a complicated structure containing four 16-bit words
> plus a 108-bit set of flags. The combination of the whole lot must be
> unique. I don't need to retrieve this data other than to check for
> duplicate records, so I can massage it in FreePascal so that it can go
> into the database in any form that's desirable. 

If there's any chance that you'll ever need data fromt the four 16-bit words, 
I'd create a five part primary key with four small integers followed by a 14 
byte string octets.  Firebird index keys are compressed and rearranged so they 
compare bytewise regardless of the original format - single field or multiple, 
combinations of strings and numbers, etc.  If it were me, I'd let Firebird 
create the key from data.
> 
> 
> If I were using PostgreSQL, I'd store the whole lot as a single
> 172-bit bitstring, but I can't find any mention of an equivalent data
> type in the Firebird documentation that I've been able to find. 

String of type octets works.
> 

Good luck,

Ann
  • [firebird-supp... brian br...@meadows.pair.com [firebird-support]
    • Re: [fire... 'Carlos H. Cantu' lis...@warmboot.com.br [firebird-support]
      • RE: [... 'Leyne, Sean' s...@broadviewsoftware.com [firebird-support]
    • Re: [fire... Ann Harrison aharri...@ibphoenix.com [firebird-support]
    • RE: [fire... 'Louis van Alphen' lo...@nucleo.co.za [firebird-support]
      • Re: [... Ann Harrison aharri...@ibphoenix.com [firebird-support]
    • Re: [fire... brian br...@meadows.pair.com [firebird-support]
      • Re: [... 'Carlos H. Cantu' lis...@warmboot.com.br [firebird-support]
      • Re: [... Ann Harrison aharri...@ibphoenix.com [firebird-support]

Reply via email to