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

Łączenie ciągu i identyfikatora klucza podstawowego podczas wstawiania

Jeśli user_id jest kluczem podstawowym AUTO_INCREMENT, nie możesz tego zrobić za pomocą pojedynczej instrukcji, nawet jeśli używasz wyzwalacza.

Problem polega na tym, że wartość AUTO_INCREMENT jest generowana dopiero po BEFORE INSERT wyzwalacz działa, ale nie możesz zmienić username w AFTER INSERT wyzwalacz.

Musisz tylko wykonać INSERT , a następnie natychmiast wykonaj UPDATE .

Jeśli user_id jest nie AUTO_INCREMENT, ale zamiast tego jest to coś, co sam określasz, to jest łatwe, po prostu wykonujesz konkatenację w swoim kodzie PHP, zanim przekażesz wartości jako parametry.

Aktualizacja:Nie możesz tego zrobić również z kolumnami generowanymi przez MySQL 5.7. Powoduje to ten błąd podczas próby utworzenia tabeli:



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL - Dołącz do 2 stołów

  2. Jak ograniczyć liczbę wierszy, które można przechowywać w tabeli mysql?

  3. Funkcja konwersji MySQL

  4. Jak skonfigurować i zalogować się jako użytkownik root w MySQL?

  5. Jak mogę włączyć powolny dziennik zapytań MySQL bez ponownego uruchamiania MySQL?