Op records gebaseerd invoegvoorbeeld:
VERKLAREN
my_book books%ROWTYPE;
BEGIN
my_book.isbn :='1-123456-123-1';
my_book.title :='Fox Infotech Blogs';
my_book.summary :='Fox Voorbeelden';
my_book.author :='V. Kapoor';
my_book.page_count :=300;
INSERT INTO books VALUES my_book;
END;
/
Merk op dat u geen haakjes plaatst rond de recordspecificatie . Als u dit formaat gebruikt:
INVOEREN IN boeken WAARDEN (my_book); -- Met haakjes, ONGELDIG!
dan krijg je een ORA-00947:niet genoeg waarden uitzondering, omdat het programma een aparte uitdrukking verwacht voor elke kolom in de tabel.
Voorbeeld van update op basis van records:
U kunt ook updates van een hele rij uitvoeren met behulp van een record. In het volgende voorbeeld wordt een rij in de boekentabel bijgewerkt met een %ROWTYPE-record. Merk op dat ik het trefwoord ROW gebruik om aan te geven dat ik de hele rij bijwerk met een record:
VERKLAREN
my_book books%ROWTYPE;
BEGIN
my_book.isbn :='1-123456-123-1';
my_book.title :='Fox Infotech Blogs';
my_book.summary :='Fox Voorbeelden';
my_book.author :='V. Kapoor';
my_book.page_count :=300;
UPDATE boeken
SET ROW =my_book
WHERE isbn =my_book.isbn;
END;
/
Er gelden enkele beperkingen voor op records gebaseerde updates:
U kunt geen update uitvoeren met een subquery.
En, mocht je het je afvragen, je kunt geen tabelkolom maken met de naam ROW.