Steve,

> For some reason the below statement is not working. Can anyone tell me
why?
>
> Select EDIT_LOCK from ordmaster where EDIT_LOCK + INTERVAL 10 MINUTE <
now()
> AND ORDER_NO = '5' AND EDIT_LOCK > 0;
>
> -EDIT_LOCK is a MySQL (ver 3.23.49-max) time field, allows nulls, default
is
> NULL.
>
> If this cannot be done in a query, whats the best way to compare time in
> php?


The best way to compare time in PHP is to use the MySQL RDBMS that is
managing/retrieving the data for you.

Recommendation 1: do not use a Time field (you did mean the back 'half' of a
Date-time field didn't you?). Because you are (apparently only) using this
field to temporarily lock a row, the value is only ever used for computation
(cf display). A Timestamp field is best for computation - a Time field for
presentation. Consider also storing such data as an integer field or beware
the automatic update feature for Timestamp fields.

Recommendation 2: re-consider the (default) use of NULL - this may be the
root of the question you're asking: what if the row has never been 'locked'
and attempt the (above) SELECT? (then the last comparison clause would be
illogical) If the default were zero (0 or 00:00:00) and the retrieval logic
updated slightly, things should be less complicated.

Regards,
=dn



-- 
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to