Przykład wstawiania opartego na rekordzie:
ZADEKLARUJ
my_book books%ROWTYPE;
BEGIN
my_book.isbn :='1-123456-123-1';
my_book.title :='Fox Infotech Blogs';
moja_książka.summary :='Przykłady lisów';
moja_książka.autor :='V. Kapoor';
my_book.page_count :=300;
WSTAW W KSIĄŻKI WARTOŚCI moja_książka;
END;
/
Zauważ, że nie umieszczasz nawiasów wokół specyfikatora rekordu . Jeśli używasz tego formatu:
WSTAW W KSIĄŻKI WARTOŚCI (moja_książka); -- Z nawiasami, NIEPRAWIDŁOWE!
wtedy otrzymasz wyjątek ORA-00947:za mało wartości, ponieważ program oczekuje oddzielnego wyrażenia dla każdej kolumny w tabeli.
Przykład aktualizacji opartej na rekordach:
Możesz także wykonać aktualizacje całego wiersza za pomocą rekordu. Poniższy przykład aktualizuje wiersz w tabeli książek za pomocą rekordu %ROWTYPE. Zauważ, że używam słowa kluczowego ROW, aby wskazać, że aktualizuję cały wiersz rekordem:
ZADEKLARUJ
my_book books%ROWTYPE;
BEGIN
my_book.isbn :='1-123456-123-1';
my_book.title :='Fox Infotech Blogs';
moja_książka.summary :='Przykłady lisów';
moja_książka.autor :='V. Kapoor';
moja_książka.page_count :=300;
UPDATE książki
SET ROW =moja_książka
WHERE isbn =moja_książka.isbn;
END;
/
Istnieją pewne ograniczenia dotyczące aktualizacji opartych na rekordach:
Nie można wykonać aktualizacji za pomocą podzapytania.
A jeśli się zastanawiasz, nie możesz utworzyć kolumny tabeli o nazwie ROW.