I think I have to agree with your words[5] and words[6] . Where -
words:array[0..xxx] of string;
John
I work on systems where some idiot used a decimal(9,0) as a PK and mixed it
with other tables with integers, I think with any PK the main thing is use the
same otherwise you force the server to use hash joins (v slow) and secondly use
the smallest key you can (I'm currently using a bigint derived from the server
time) I really can see no reason for using anything larger than a bigint for a
surrogate, you can use a generator (like I do) or identity for a client
high/low, if you are going to cluster the pk you want it to be sequential
MSSql 2008 offers a 'sequential guid' but that is 16 bytes versus 8 for a bigint
Neven
Dealing with index/ID field that is set as binary - here is the solution that
worked in case any one else comes across same....
Note for MSSQL using such a field in a JOIN SQL statement would be perfectly
fine as normal, as MSSQL has a native binary type. Delphi ADO however does
not, so this is the hoops I had to jump through when its two different datasets
and I needed to get the value in order to open the other with SQL or as a
parameter....
example - using a Company_ID from Comp table to open Contacts that belong to
that Company...
Comments from friends who know MSSQL - their opinion is that an ID/index
field that is binary is unusual practice - restricts what kind to indexes can
be made for instance. Anyone here have opinion on this? have others come
across ID/Index that is Binary often?
Step 1:
ADOQueryComp.SQL.Text:='select *, Cast(Company_ID as VARCHAR(10)) as
ACompID, CAST(Company_ID as INT) as DCOMPID from Company '+
'where Company_Name like '+likestr;
Note - Casting binary to string/Varchar does not work, but to integer does.
Go figure!
Step 2:
iCompanyID:=cdsComp.FieldbyName('DCompID').asinteger;
ADOQueryContact.SQL.Text:='select * from Contact '+
'where Company_ID = CAST('+inttostr(iCompanyID)+' AS BINARY(8))';
John
_______________________________________________
NZ Borland Developers Group - Delphi mailing list
Post: delphi@delphi.org.nz
Admin: http://delphi.org.nz/mailman/listinfo/delphi
Unsubscribe: send an email to delphi-requ...@delphi.org.nz with Subject:
unsubscribe
--------------------------------------------------------------------------------
_______________________________________________
NZ Borland Developers Group - Delphi mailing list
Post: delphi@delphi.org.nz
Admin: http://delphi.org.nz/mailman/listinfo/delphi
Unsubscribe: send an email to delphi-requ...@delphi.org.nz with Subject:
unsubscribe
_______________________________________________
NZ Borland Developers Group - Delphi mailing list
Post: delphi@delphi.org.nz
Admin: http://delphi.org.nz/mailman/listinfo/delphi
Unsubscribe: send an email to delphi-requ...@delphi.org.nz with Subject:
unsubscribe