Can't Locate Record by DateTime Field?

 Hello.
 I'm making a simple statistics-accumulating routine. (which inserts when
there's no record with matching key field and updates(adds) the record when
there exists).
 Well, it works fine for most case. But it doesn't seems to work when i use
field with DateTime type for Key.
 I used locate function as following:

  if Locate('Datetime', DTime, []) then <update> else <insert>

 It seems to work when DTime has no decimals (that is, DTime has no time
value but date value). But I need to match as well as time value.
 I've heard it is a bug of 'locate' function. Then how can I find whether
the there's matching record or not? I've tried to use SetKey/FindKey but
it's only implemented in TTable and TClientDataSet (I'm using TADOTable).
 Any suggestion or help will be appreciated.
 Thanks in advance.

- innover