2016-06-08 9 views
0

Im Versuch, einen Block in PL/SQL auszuführen, dieOracle PL-SQL: eine rowtype nach Wählen Sie Einfügen - keine genügend Werte

  • die aktuellen Daten einer Zeile Erhalten von Tabelle% rowtype
  • tun
  • Modify ein Attribut von ihm
  • Und dann den Datensatz in eine INSERT INTO ... VALUES-Anweisung wie folgt einfügen.
declare 
     v_record table%ROWTYPE 
    begin 
     select * 
     into v_record 
     from X_table; 

     insert into X_table values (v_record) 
    end; 

Aber der Fehler, der wirft, wenn ich dies tun, ist PL/SQL: ORA-00947: nicht genügend Werte

Antwort

2

Ich habe dieses Problem gelöst, um die Klammer von den Werten entfernt Auswahl in der INSERT-Anweisung.

Zum Beispiel:

insert into X_table values v_record;