Ciao a tutti, ho una tabella di dettaglio che contiene il dettaglio di tutte le spedizioni
esempio
testata spedizione :
codice 11
descrizione bla bla
primo dettaglio spedizione
codice testata 11
numero pacco 0
secondo dettaglio spedizione
codice testata 11
numero pacco 1
terzo dettaglio spedizione
codice testata 11
numero pacco 2
quindi ogni volta che aggiungo un dettaglio, numero il pacco
il problema è che se viene cancellato un dettaglio, esempio il secondo
secondo dettaglio spedizione
codice testata 11
numero pacco 1
il mio campo "numero campo" presenta un "buco"
come posso fare un update (una query che lancerei alla fine del processo di inserimento) che mi aggiorna i progressivi del campo numero pacco? (rendendoli continui 0,1,2,3,4,5,6,7... in caso di "buchi")
ovviamente ogni spedizione ha il suo progressivo, non si tratta di un progressivo comune a tutte le spedizioni
in sintesi aggiornare (ovvero ricreare il contatore) dopo ogni inserimento, dato che se l'utente mi crea una spedizione con 3 righe di dettaglio e mi cancella quella in mezzo o la prima il contarore non è progressivo... io vorrei invece che nel dettaglio il campo inizi sempre da 0 (se ho una sola riga di dettaglio) e proceda con numeri contigui ... 1,2,3,4
quindi dopo ogni inserimento, aggiornamento, cancellazione eseguirei questa query di controllo, solo che non so come gestire l'update del contatore
Grazie
CREATE TABLE `DB`.`spedizionidettaglio` (
`id` int(10) unsigned NOT NULL auto_increment,
`idSpedizioni` int(10) unsigned NOT NULL,
`numeroPacco` int(10) unsigned NOT NULL default '0',
PRIMARY KEY (`id`),
KEY `FK_webspedizionidettaglio_1` (`idSpedizioni`),
CONSTRAINT `FK_webspedizionidettaglio_1` FOREIGN KEY (`idSpedizioni`) REFERENCES `webspedizioni` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=631 DEFAULT CHARSET=latin1;
CREATE TABLE `DB`.`spedizioni` (
`id` int(10) unsigned NOT NULL auto_increment,
`idCliente` int(10) unsigned default NULL,
`idWebRubrica` int(10) unsigned default NULL,
`destRagioneSociale` varchar(255) default NULLdefault NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=379 DEFAULT CHARSET=latin1;