ODBC
Update
After a FETCH statement completes successfully, you are positioned
on a current row within the cursor. At this point, you can execute an
UPDATE or DELETE statement using the WHERE CURRENT OF cursor_name syntax
to update or delete the row. PowerBuilder enforces the cursor update
restrictions of the backend database, and violations will result in an
execution error.
Example
This cursor example illustrates how to loop through a result set. It
assumes that the default transaction object (SQLCA) has been assigned
valid values and a successful CONNECT has been executed. The statements
retrieve rows from the employee table, and then display a message box with
the employee name for each row that is found.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
// Declare the emp_curs. DECLARE emp_curs CURSOR FOR SELECT emp_name FROM EMPLOYEE WHERE emp_state = :sle_1.text; // Declare a destination variable for employee // names. string emp_name_var // Execute the SELECT statement with the // current value of sle_1.text. OPEN emp_curs; // Fetch the first row from the result set. FETCH emp_curs INTO :emp_name_var; // Loop through result set until exhausted. DO WHILE sqlca.sqlcode = 0 // Display a message box with the employee name. MessageBox("Found an employee!",emp_name_var) // Fetch the next row from the result set. FETCH emp_curs INTO :emp_name_var; LOOP // All done; close the cursor. CLOSE emp_curs; |
Error checking
Although you should test the SQLCode after every SQL statement,
these examples show statements to test the SQLCode only to illustrate a
specific point.