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.