Вставка record

daunito
Дата: 03.12.2009 14:46:12
Доброго времени суток! Мне надо вставить строку на основе существующей, заменив в ней всего 2 поля. Руками переписывать все поля очень не хочется. Я сделал переменную типа rowtype, и выбрал в нее строку из таблицы. Потом 2-м полям присвоил нужные значения, но теперь не знаю как вставить эту переменную. Можно-ли как-то это сделать, не перебирая все поля? Что-нибудь вроде insert into docs values(docrow)
.
Дата: 03.12.2009 14:49:32
daunito,

например так:
insert into docs values docrow
_Alex_SMIRNOV_
Дата: 03.12.2009 14:50:00
предется указывать все поля
andrey_anonymous
Дата: 03.12.2009 14:51:43
create table ane_tt (a, b, c) as select 1,2,22 from dual;
 
Table created

declare
  cursor c(p number) is select * from ane_tt where a=p;
  e c%rowtype;
begin
  open c(1);
  fetch c into e;
  close c;
  e.c := 11;
  insert into ane_tt values e;
end;
/
 
PL/SQL procedure successfully completed

select * from ane_tt;
 
         A          B          C
---------- ---------- ----------
         1          2         22
         1          2         11
 
SQL> 
suPPLer
Дата: 03.12.2009 14:52:30
daunito
Что-нибудь вроде
insert into docs values(docrow)


Ну почти.
insert into docs values docrow;
_Alex_SMIRNOV_
Дата: 03.12.2009 14:54:23
_Alex_SMIRNOV_
предется указывать все поля


пошел читать доку....
daunito
Дата: 03.12.2009 15:13:23
Огромное спасибо! Скобки были лишними