EXEC SQL
DECLARE names CURSOR FOR
SELECT fname, lname, company
FROM customer
FOR UPDATE;
EXEC SQL
FETCH names INTO :FNAME, :LNAME, :COMPANY;
if (strcmp(COMPANY, "SONY") ==0)
{
EXEC SQL
UPDATE customer
SET fname = 'Midori', lname = 'Tokugawa'
WHERE CURRENT OF names;
}
この WHERE 節では、通常の条件式の代わりに CURRENT OF names が使用されています。これ以外は、この UPDATE 文は通常の UPDATE 文と同じです。この文に指定されている表名は、カーソル名から間接的にわかりますが、指定しなければなりません。