MySQL AUTO_INCREMENT question
V13
v13 at priest.com
Thu Dec 21 19:58:12 EET 2006
On Wednesday 20 December 2006 20:27, Θοδωρής Λύτρας wrote:
> Ένα βασικό νόημα αυτού που αναζητώ είναι το εξής: φτιάχνω την εφαρμογή μου
> σε PHP, την δοκιμάζω με υποθετικές εγγραφές, κάνω debug, σβήνω μετά από το
> mysql monitor τις εγγραφές αυτές, και θέλω ο μετρητής να επιστρέψει στο 1
> για να κάνω κι άλλες δοκιμες. Αν δεν υπάρχει κάποιος τρόπος γι'αυτό θα
> πρέπει να κάνω DROP τους πίνακες και να τους ξαναφτιάξω...
Tote ayto poy theleis den einai to autoincrement, alla 'ena' query to opoio na
soy epistrefei ton proto eleythro arithmo. Sth synexeia orizeis mono soy to
id, symfona me to apotelesma toy query...
Prosopika to kano ayto me kodika kai xrisimopoio to parakato:
SELECT MIN(a.$efield-1) AS id, COUNT(a.$efield-1) AS cnt
FROM $etable a LEFT JOIN $etable b ON b.$efield=a.$efield-1
WHERE b.$efield IS NULL AND a.$efield>1 $where;
Opoy $efield einai to escaped onoma toy pedioy kai $etable einai to escaped
onoma toy pinaka
An to cnt den einai 0, tote to id einai to epomeno eleythero id.
An to cnt einai 0 tote shmainei oti den yparxei keno h den yparxoyn eggrafes,
opote kaneis:
SELECT MAX($efield)+1 AS id, COUNT($efield) AS cnt FROM $etable
kai elegxeis kai pali to cnt. An to cnt einai 0 shmainei oti den yparxoyn
eggrafes kai arxizeis apo to 0. An den einai 0, tote to id exei to epomeno
eleythero ID.
Ta parapano doylevoyn se postgresql kai elpizo na doylevoyn kai se mysql. Tha
mporoyse na ginei kai me ena query mono, alla tha itan elafros pio polyploko
kai tha xreiazotan kapoies synartiseis opos to COALESCE...
Opos katalabaineis den mporeis na kaneis kati tetoio se megaloys pinakes giati
tha kathysterei xoris logo.
Telos, einai kaki taktiki na kaneis development kai debuging pano sth
production basi, opote isos na'nai kalytera na ksekiniseis apo ekei...
<<V13>>
More information about the Linux-greek-users
mailing list