sql >> Database >  >> RDS >> PostgreSQL

Cayenne, Postgres:primaire sleutelgeneratie

Uit uw beschrijving in opmerkingen, van de 2 kolommen die de PK van 'telefonocliente' bevatten, is er slechts één echt onafhankelijk - 'cod_telefono'. Dit zal de Cayenne zijn. In het geval van PosgreSQL heb je de volgende volgorde in DB nodig om dit te laten gebeuren:

CREATE SEQUENCE pk_telefonocliente INCREMENT 20 START 200;

Waar komt de tweede PK 'cod_cliente' vandaan? Omdat het ook FK is naar een andere tafel, betekent dit dat het een "afhankelijke" PK is en uit een relatie moet komen. Dus eerst moet je een veel-op-een relatie tussen 'telefonocliente' en 'cliente' in kaart brengen. Vink het selectievakje "To Dep Pk" aan aan de 'telefonocliente'-kant. Genereer een bijpassende ObjRelationship voor uw Java-objecten. Nu kunt u het in uw code gebruiken:

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

Dat zou het moeten zijn.



  1. MySQL:zoek naar dezelfde string in meerdere kolommen

  2. MYSQL-query - krijg rijen waar de prijs is gewijzigd

  3. Hoe haal ik resultaten op als multidimensionale array uit mySQL en PHP?

  4. Hoe voer je een Java-toepassing uit met MySQL DB op een computer zonder dat MySQL is geïnstalleerd?