Buongiorno a tutti,
mi sono accorto che la seguente query che uso per trasferire dati da una tabella "temporanea" a quella definitiva, mi mangia dei valori di auto increment per l'id chiave primaria della tabella definitiva.
La query che uso è questa:
la query non ha mai dato errore, viene eseguita sempre correttamente, ma è come se dopo l'esecuzione bloccasse già dei valori dell'auto increment.
Cerco di spiegarmi meglio con degli esempi perchè la cosa è strana.
Se eseguo la query e copio 3 righe o meno dalla tabella temporanea, problemi non ne riscontro, il valore di auto increment sembra regolare.
Se però copio 5 righe alla prima esecuzione i valore è corretto l'incremento è lineare, ma se eseguo nuovamente mi perde 3 valori e la tabella si presenta cosi
id valori
.... ...
2009 valori....
si mangia 3 valori di increment...
2010 valori....
2014 valori....
2015 valori....
2016 valori....
2017 valori....
2018 valori....
come si nota i valore 2011, 2012 e 2013 non sono utilizzati.
Se copio 9 righe appena dopo averne copiate 5, perdo sempre 3 valori dell'incremento, ma se subito dopo copio altre 5, perdo 7 valori
id valori
.... ...
2014 valori....|
2015 valori....|
2016 valori....| copiate 5 righe
2017 valori....|
2018 valori....|
si mangia 3 valori di increment...
2022 valori....|
2023 valori....|
2024 valori....|
2025 valori....|
2026 valori....| copiate 9 righe
2027 valori....|
2028 valori....|
2029 valori....|
2030 valori....|
si mangia 7 valori di increment...
2038 valori....|
2039 valori....|
2040 valori....| copiate altre 5 righe
2041 valori....|
2042 valori....|
Cosa può essere a produrre questo effetto?
E soprattutto, come posso correggerlo?
Grazie a tutti, spero di essere stato chiaro nell'esposizione
mi sono accorto che la seguente query che uso per trasferire dati da una tabella "temporanea" a quella definitiva, mi mangia dei valori di auto increment per l'id chiave primaria della tabella definitiva.
La query che uso è questa:
Codice:
INSERT INTO DB_Name.Tab_definitiva(valore1, valore2, valore3)
SELECT "valore_costante", valore_temp2, valore_temp3 FROM DB_Name.Tab_temp WHERE valore_temp2 = "un valore"
la query non ha mai dato errore, viene eseguita sempre correttamente, ma è come se dopo l'esecuzione bloccasse già dei valori dell'auto increment.
Cerco di spiegarmi meglio con degli esempi perchè la cosa è strana.
Se eseguo la query e copio 3 righe o meno dalla tabella temporanea, problemi non ne riscontro, il valore di auto increment sembra regolare.
Se però copio 5 righe alla prima esecuzione i valore è corretto l'incremento è lineare, ma se eseguo nuovamente mi perde 3 valori e la tabella si presenta cosi
id valori
.... ...
2009 valori....
si mangia 3 valori di increment...
2010 valori....
2014 valori....
2015 valori....
2016 valori....
2017 valori....
2018 valori....
come si nota i valore 2011, 2012 e 2013 non sono utilizzati.
Se copio 9 righe appena dopo averne copiate 5, perdo sempre 3 valori dell'incremento, ma se subito dopo copio altre 5, perdo 7 valori
id valori
.... ...
2014 valori....|
2015 valori....|
2016 valori....| copiate 5 righe
2017 valori....|
2018 valori....|
si mangia 3 valori di increment...
2022 valori....|
2023 valori....|
2024 valori....|
2025 valori....|
2026 valori....| copiate 9 righe
2027 valori....|
2028 valori....|
2029 valori....|
2030 valori....|
si mangia 7 valori di increment...
2038 valori....|
2039 valori....|
2040 valori....| copiate altre 5 righe
2041 valori....|
2042 valori....|
Cosa può essere a produrre questo effetto?
E soprattutto, come posso correggerlo?
Grazie a tutti, spero di essere stato chiaro nell'esposizione