Index doppelt

Softwarepaket für Verwaltung von Artikeln, Produkten, Inventar uvam. Komplett mit PC Software, Barcodes für Warenbewegungen und Historien
Benutzeravatar
AESupport
Beiträge: 179
Registriert: Sa Jul 02, 2016 1:31 am

Index doppelt

Beitragvon AESupport » Di Sep 11, 2018 7:53 am

Ein Index darf niemals doppelt sein! Das Feld INDEX muss eindeutig sein - eine Wert darf jeweils nur einmalig vorkommen, sonst die Datenbank zerstört und ein Datenzugriff ist nicht mehr möglich. Eine solche Datenbank dürfen Sie nicht mehr verwenden. Steigen Sie unbedingt auf eine Sicherung um, die diesen Fehler nicht aufweist!

Bei 2.15 Versionen: Der Datentyp ist auf INT (Integer) definiert und kann Werte bis zu 2.147.483.647 annehmen. Der Index ist ein Lebenszähler, d.h es wird alles gezählt, was einmal als Datensatz verwendet wurde. Dieses schließt auch gelöschte Datensätze mit ein.

Bei SQL: Das Feld muss auf INT gesetzt werden und kann ebenfalls Werte bis zu 2.147.483.647 annehmen. (Quelle: Microsoft MSDN) Wichtig: In SQL sollte das Feld INDEX auf PRIMÄRSCHLÜSSEL gesetzt sein. So wird bereits der SQL Server verhindern, dass doppelte Index existieren und selbst wenn Ihre Datenbank nachträglich via SQL kompromittiert (z.B. durch einen Hack beschädigt) wird, meldet sich der SQL Server sofort mit einer Fehlermeldung!

Um Index zu testen: Neuen Datensatz erfassen. Es sollte der nächste Freie Index vergeben werden. Anschließend die Datenbank nach Index sortieren - wenn Sie doppelte Index haben ist die Datenbank defekt und kann nicht mehr verwendet werden. Siehe oben.

Wenn keine Sicherung vorliegt (DARF ES NICHT GEBEN - aber für den Fall, dass...): Die Buchungen im Journal sind verloren. Die Datenbank können Sie unter Umständen noch retten. Datenbank als XLS CSV Datei exportieren und dabei NICHT das Feld INDEX exportieren. Dann neue Datenbank öffnen und XLS CSV Datei importieren. Das Programm wird einen neuen Index vergeben und Sie haben zumindest Ihre Daten gerettet. Falls die Bestände nicht stimmen, müssen Sie evtl mit einer Anfangsinventur beginnen. (Der Tipp gilt für XML UND SQL Datenbanken - wobei Sie bei SQL natürlich serverseitig die ganze Tabellen löschen müssen.)

Zurück zu „AE WWS Lite Lager- u. Artikelverwaltung“