Wenn Sie MyISAM verwenden, können Sie einen zusammengesetzten Primärschlüssel für ein Textfeld + Auto-Increment-Feld erstellen. MySQL übernimmt das Erhöhen der Nummer automatisch. Sie sind separate Felder, aber Sie können denselben Effekt erzielen.
CREATE TABLE example (
company_name varchar(100),
key_prefix char(4) not null,
key_increment int unsigned auto_increment,
primary key co_key (key_prefix,key_increment)
) ENGINE=MYISAM;
Wenn Sie in die Tabelle einfügen, wird der key_increment
Feld wird basierend auf dem höchsten Wert basierend auf key_prefix
erhöht . Also mit key_prefix
einfügen "smit" beginnt mit 1 in key_inrement
, key_prefix
"jone" beginnt mit 1 in key_inrement
usw.
Vorteile:
- Sie müssen nichts mit dem Rechnen von Zahlen zu tun haben.
Nachteile:
- Sie haben einen Schlüssel, der auf 2 Spalten aufgeteilt ist.
- Es funktioniert nicht mit InnoDB.