Antwort #9 am: 15. Mai 2014, 13:11:52
[...]
customers 0 PRIMARY 1 customers_id A 75 NULL NULL BTREE
was heißt das jetzt?
[...]
Eine Cardinality von 75 würde bedeuten, dass Du 75 eindeutige Datensätze in der Tabelle hast. Das muß nicht unbedingt stimmen, weil statistisch, aber zumindest die Größenordung sollte passen.
Die Zahl passt allerdings nicht zu der customers_id 115, die Du angemerkt hast, kann aber vorkommen, weil Du inzwischen Kunden (oder Gäste) gelöscht hast.
Möglicherweise ist folgendes passiert: Durch Kopieren der DB wurde der Zähler für die nächste freie Nummer im Index verbogen, und Dein System liefert nun bei der Neuanlage eines Kunden eine customers_id, die schon einmal vergeben war. Dieser Kunde sieht naturgemäß die Aufträge eines Kunden oder Gasts, der diese Nummer früher hatte.
Legst Du nun von Hand einen Kunden mit einer höheren ID an, wird die Datenbank ab dieser ID weiternummerieren.
Vielleicht gibst Du mal folgende SQL-Befehle ein:
SELECT COUNT(*) FROM customers;
SELECT MAX(customers_id) FROM customers;
Damit ermittelst Du die Anzahl der Kundensätze und die größte ID, die in der Tabelle vorkommt. Das sollte ein wenig Licht in's Dunkel bringen.
zum Session Link: Soweit ich weiß gibt es keinen solchen Link, jedenfalls nicht von mir
Da wird ein Session-Diebstahl vermutet. Wäre theoretisch denkbar, halte ich aber in diesem Fall für unwahrscheinlich.