PostgreSQL
 sql >> Teknologi Basis Data >  >> RDS >> PostgreSQL

Cayenne, Postgres:pembuatan kunci utama

Dari uraian Anda di komentar, dari 2 kolom yang terdiri dari PK 'telefonocliente', hanya satu yang benar-benar independen - 'cod_telefono'. Inilah yang akan dihasilkan Cayenne. Dalam kasus PosgreSQL, Anda memerlukan urutan berikut dalam DB agar hal ini terjadi:

CREATE SEQUENCE pk_telefonocliente INCREMENT 20 START 200;

Sekarang, dari mana PK 'cod_cliente' kedua berasal? Karena itu juga FK ke tabel lain, itu berarti itu adalah PK "bergantung", dan harus berasal dari suatu hubungan. Jadi pertama-tama Anda perlu memetakan hubungan banyak-ke-satu antara 'telefonocliente' dan 'klien'. Centang kotak "Ke Dep Pk" di sisi 'telefonocliente'. Hasilkan ObjRelationship yang cocok untuk objek Java Anda. Sekarang Anda dapat menggunakannya dalam kode Anda:

Cliente c = .. // get a hold of this object somehow   
TelefonoCliente telefono = context.newObject(TelefonoCliente.class);
telefono.setFijo(4999000);
telefono.setCliente(c); // this line is what will populate 'cod_cliente' PK/FK

Seharusnya begitu.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL ORDER BY dengan CASE dengan UNION ALL

  2. Masukkan kerangka data ke dalam sqlalchemy postgresql dengan idx autoincrement

  3. Memilih array dalam format yang dicetak dengan baik di SQL

  4. Datetime default dengan Ecto &Elixir

  5. Menggunakan psql untuk terhubung ke PostgreSQL dalam mode SSL