Dobio sam da malo zbudžim postojeću php skriptu koja radi sa Oracle bazom. Nikada pre nisam video Oracle upite i ove bind-ove. U svakome slučaju, problem je bio što se sa ovim upitom povremeno desi ORA-00001: unique constraint violated greška. Ovo je upit:
Code:
$binds = array(':uid' => $userid, ':num_c' => $compute );
$query = "INSERT into stats(uid, log_timestamp)
VALUES (:uid, sysdate - :num_c)";
$binds = array(':uid' => $userid, ':num_c' => $compute );
$query = "INSERT into stats(uid, log_timestamp)
VALUES (:uid, sysdate - :num_c)";
uid je unique
E sada, izgleda da INSERT IGNORE nije moguć, malo sam guglao i došao do ovoga:
Code:
$query = "INSERT into stats(uid, log_timestamp)
SELECT :uid, :num_c
FROM dual
WHERE NOT EXISTS (
SELECT 1 FROM stats
WHERE uid = :uid
AND log_timestamp = sysdate - :num_c)";
$query = "INSERT into stats(uid, log_timestamp)
SELECT :uid, :num_c
FROM dual
WHERE NOT EXISTS (
SELECT 1 FROM stats
WHERE uid = :uid
AND log_timestamp = sysdate - :num_c)";
Ali ovo ORA-01840: input value not long enough for date format.
Pomagajte ljudi, ceo dan kljucam nad ovim :(