Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak uzyskać kolejny alfanumeryczny identyfikator na podstawie istniejącej wartości z MySQL?

Jeśli używasz MyISAM, możesz utworzyć złożony klucz podstawowy w polu tekstowym + pole automatycznego przyrostu. MySQL zajmie się zwiększaniem liczby automatycznie. Są to osobne pola, ale możesz uzyskać ten sam efekt.

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;

Kiedy robisz wstawkę do tabeli, key_increment pole będzie się zwiększać na podstawie najwyższej wartości na podstawie key_prefix . Więc wstaw z key_prefix "smit" zacznie się od 1 w key_inrement , key_prefix „jone” zacznie się od 1 w key_inrement itp.

Plusy:

  • Nie musisz nic robić z obliczaniem liczb.

Minusy:

  • Masz klucz podzielony na 2 kolumny.
  • Nie działa z InnoDB.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Funkcje ciągów MySQL (pełna lista)

  2. Jak wydrukować wszystkie zapytania w Magento?

  3. Problemy ze składnią zapytania mysql Node.js UPDATE WHERE

  4. Aktualizacja bazy danych MySql przy użyciu PHP za pomocą funkcji javascript onClick

  5. Jak znaleźć pozycję na liście w określonej pozycji w MySQL?