Hello, here is a sample of DBMS
l_select := 'SELECT tab1.field1,tab1.field2,tab2.field1 ';
l_from := 'FROM tab1,tab2';
l_where := 'WHERE tab1.field1=tab2.fieldx';|
l_Request := l_select || l_from || l_where;
- Open cursor
l_crsId := dbms_sql.open_cursor ;
- Affect the request
dbms_sql.parse(l_crsId, l_Request, dbms_sql.native);
- Défine the return column
dbms_sql.define_column (l_crsId,1,l_field11);
dbms_sql.define_column (l_crsId,2,l_field12,1);
dbms_sql.define_column (l_crsId,3,l_field21,1);
- Execute the cursor
l_return := dbms_sql.execute (l_crsId);
- get the return data
l_cpt := 0;
while dbms_sql.fetch_rows (l_crsId) > 0 loop
dbms_sql.column_value (l_crsId,1,l_tab(l_cpt).field11);
dbms_sql.column_value (l_crsId,2,l_tab(l_cpt).field12);
dbms_sql.column_value (l_crsId,2,l_tab(l_cpt).field21);
l_cpt := l_cpt + 1;
end loop;
- close the cursor
dbms_sql.close_cursor (l_crsId);
I hope it helps you.
Received on Tue Oct 26 1999 - 02:52:29 CDT