2016-06-20 4 views
0

Ich muss eine Hibernate _aud Tabelle manuell mit Liquibase und Postgres aktualisieren.Hibernate _AUD Tabelle - FOR Anweisung von SELECT

werde ich meinen Algorithmus erklären:

FIRST: Wählen Sie alle verschieden id aus person_AUD Tabelle

select distinct id from product_aud; 

ZWEITE: Einfügen neuer Datensätze in product_aud auf der Grundlage der "ID-Liste".

So würde Ich mag so etwas tun:

MY_IDs = select distinct id from product_aud; //My row list with id column 
    for(int i=1;i <MY_IDs;i++) { 
      INSERT INTO product_aud(id,rev,revtype,revend) 
      VALUES (i, nextval ('hibernate_sequence'), 1, null) 

    } 

Wie kann ich nur diese mit SQL zu tun?

Antwort

0

Sie können wie etwas tun:

insert into product_aud(id,rev,revtype,revend) 
select persons.id, nextval ('hibernate_sequence'), 1, null 
from (
    select distinct id from person_aud 
) persons; 
+0

ok, danke ... und wie kann ich das gleiche Ergebnis mit einer Funktion und Cursor bekommen? –

+0

Nicht ganz sicher, was meinst du mit "Funktion und Cursor" .. Sie können diese Insert-Anweisung in eine SQL-Datei und rufen Sie sie mit Liquibase Sql Change Set. – veljkost