В базе Oracle есть хранимая функция:
| Код | TYPE Customers_t IS RECORD { name VARCHAR(256), id VARCHAR(8) }
TYPE CustomersCur IS REF CURSOR RETURN Customers_t.
FUNCTION fetchCustomers RETURN CustomersCur_t
|
В SQLPLUS запрос "select queries.fetchCustomers from dual" возвращает все данные. Когда делаю это на perl, курсор возвращает HASH. А как достать из него данные - непонятно.
| Код | my $db=DBI->connect(....); my $sql='BEGIN OPEN :rc FOR SELECT queries.fetchCustomers FROM dual;END;'; my $cursor; my $pst=db->prepare($sql); $pst->bind_param_inout(":rc",\$cursor, 0, {ora_type=>ORA_SET}); $pst->execute(); while( my @row = $cursor->fetchrow_array(){ print @row; }
|
Вот этот самы row содержит DBI::st=HASH.
Может быть кто-нибудь значет, как из него получить данные?
Спасибо. |