Welkom op de Nederland Computer Kennisnetwerk!  
 
Zoeken computer kennis
Home Hardware Netwerken Programmering Software Computerstoring Besturingssysteem
Computer Kennis >> Programmering >> PHP /MySQL Programmering >> Content
MySQL Auto - Increment Is Out of Sync
Database tafels hebben unieke identificatienummers , de zogenaamde primaire sleutels , voor elke afzonderlijke rij . MySQL 's auto - increment functie wijst automatisch een nieuw nummer aan een integer kolom die u opgeeft als uw primaire sleutel , die geeft je de tijd die nodig is om uw eigen primaire sleutel en de code voor het bijhouden creëren bespaart . Als je er bij neervalt rijen , echter , uw reeks van auto - increment waarden valt uit sync met de rest van de kolom waarden . Auto- Increment functie

De auto- increment functie
werkt door het bijhouden van de rij identificatienummers op de tafel zelf . Wanneer u een bepaalde kolom naar auto- increment te wijzen , wanneer u een rij aan die tafel toe te voegen , MySQL's ISAM motor automatisch gevuld die kolom met een numerieke waarde die een groter is dan de waarde die de laatste rij je toegevoegd geïdentificeerd . De functie is niet afhankelijk van de gegevens in uw rijen zichzelf , maar zijn eigen record van de laatste waarde is toegewezen aan een rij .
Getting Out of Sync

Toen je rijen van uw tabel wilt verwijderen , u afzonderlijke componenten in de volgorde van de nummers het ISAM motor toegewezen aan uw rijen verwijderen . Als u de vierde rij verwijderen, bijvoorbeeld , dan MySQL niet teruggaan en ken numerieke waarden met het veld dat automatisch verhogen , om de numerieke sequentie behouden . Evenzo, als MySQL gaf de laatste rij je een indentificatie aantal 20 toegevoegd en u deze verwijdert , de ISAM -motor kent nog de ​​volgende rij je de waarde van 21 toe te voegen .
Auto - Increment reactie

Omdat het doel van auto - increment is om elke rij in uw profiel MySQL tabel een unieke identificatie , het maakt niet uit of de nummers het toekent als identificatie hebben gaten in de sequentie of niet . Het doet alleen dat er geen twee rijen hebben hetzelfde ID-nummer . Programma ontwerpen die afhankelijk zijn van een ononderbroken opeenvolging van nummers voor het navigeren in de database tabel zijn onbetrouwbaar , omdat daalde databaserijen ze defect kunnen maken . Het laden van de rij data in een array - achtig object en het gebruik element indices is een stabielere benadering .
Oplossing

Om uw auto- increment kolom in perfecte volgorde , fix gaten nadat u rijen dalen van uw tafel . Als je er bij neervalt de hele kolom , MySQL gooit ook zijn eigen record van het volgende nummer het zal gebruiken voor de volgende rij je die tafel toewijst . Wanneer u de kolom opnieuw met dezelfde auto- increment syntax , MySQL vult automatisch de kolom met een ordelijke opeenvolging van nummers voor elke rij die u momenteel in de database . Echter , om een ​​perfecte opeenvolging behouden , moet u deze stap elke keer dat u drop een rij van de tabel herhalen .

Previous: Next:
  PHP /MySQL Programmering
·Hoe een bestand in Server PHP …
·Hoe te verwijderen van een Ele…
·Hoe maak je een Include Verkla…
·Hoe te Integers converteren in…
·Hoe kan ik een element van een…
·Hoe te Rijen verwijderen uit e…
·Hoe kan ik de PHP-code in Tool…
·Hoe kan ik PHP en MySQL Machti…
·Hoe je MySQL exporteren Van Wo…
  Related Articles
Wat is VBA ? 
Wat is een Visual Basic DataGrid ? 
Wat is een Array in Visual Basic ? 
Wat is de Visual Basic IDE ? 
Wat is Visual Studio Express ? 
Wat is Visual Basic 6.0 ? 
Wat is OCX in Visual Basic ? 
Wat is proportioneel lettertype ? 
Wat is Microsoft Visual Basic 6.5 ? 
  Programmering Articles
·Hoe te Class unset in PHP 
·Hoe de klap van de Mic waarnemen op xCod…
·Hoe maak je een Roterende nummer in Java…
·PHP String Types 
·Tutorials voor Hoe gegevens toevoegen in…
·Hoe kan ik een kolom in MySQL bijwerken 
·Hoe maak je een cirkeldiagram in JSP geb…
·Hoe naar Place JavaScript -functies in v…
·Hoe te Resources naar XCode Leer voor iP…
Copyright © Computer Kennis http://www.nldit.com