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

Ręcznie określ wartość klucza podstawowego w kolumnie JPA @GeneratedValue

Działa to z eclipselink. Stworzy osobną tabelę dla sekwencji, ale nie powinno to stanowić problemu.

@Id
@GeneratedValue(strategy=GenerationType.AUTO)
@Column(name="id", insertable=true, updatable=true, unique=true, nullable=false)
private Long id;

GenerationType.AUTO wybierze idealną strategię generowania. Ponieważ pole jest określone jako możliwe do wstawienia i aktualizacji, zostanie użyta strategia generowania TABLE. Oznacza to, że eclipselink wygeneruje kolejną tabelę zawierającą bieżącą wartość sekwencji i wygeneruje samą sekwencję zamiast delegować ją do bazy danych. Ponieważ kolumna jest zadeklarowana jako możliwa do wstawienia, jeśli id ​​jest null podczas utrwalania, eclipselink wygeneruje id. W przeciwnym razie zostanie użyty istniejący identyfikator.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Problem z bazą danych Laravel 5

  2. Jak dodać więcej członków do mojej kolumny typu ENUM w MySQL?

  3. mysql_real_escape_string i array_map zwraca puste ciągi?

  4. wprowadzone dane formularza nie są zapisywane w mysql db?

  5. W jaki sposób tabele innodb są blokowane podczas przetwarzania wyzwalacza ON INSERT?