PDA

View Full Version : [database] piccola domanda


Alecoaq
25-04-2006, 01:54
ciao a tutti!

ho una tabella nel database contenente news. la tabella ha i campi CONTATORE, TITOLO, TESTO, AUTORE.

il campo CONTATORE è settato come chiave primaria e come extra le ho settato AUTO_INCREMENT, in modo tale che ogni nuova news che si aggiunge abbia una chiave crescente.

Adesso ho fatto dei test e mi ritrovo 3 news con le chiavi: 1, 3, 10 [perchè cancellando quelle con chiave 2,4,... rimangono i buchi]

la domanda è: esiste un modo per eliminare quei buchi? anche manualmente dal database?

io ho provato a modificare il campo CONTATORE di ogni singola news, così ho settato le mie 3 news con 1, 2, 3 , però quando creo una nuova news, le viene assegnata la chiave 11, mentre io vorrei che le fosse assegnata la chiave 4.

Come posso fare?

Alecoaq
25-04-2006, 17:12
uppo, qualcuno risponda :mc:

84seawolf
25-04-2006, 17:48
leggendo veloce il tuo post, la prima cosa che mi è venuta in mente è l'utilizzo di trigger.
Così a occhio una soluzione (un po "sporca") potrebbe essere di modificare (quando si verifica l'evento di cancellazione di un record) il campo contatore + grande rimasto al campo del contatore cancellato.
Adesso nello specifico non so le problematiche del progetto che stai facendo; quindi non so se ti serve che i vari contatori indichino anche l'ordine di creazione dei record (in quest'ultimo caso la mia soluzione non funzionerebbe e dovresti far scalare tutti i record dopo quello cancellato).