En la documentación de DBI se indican algunos procedimientos para sacar información del esquema de la base de datos.
Uno de ellos es, después de hacer la consulta, mirar el contenido del atributo NAME, que contiene una referencia a un
array, en que cada elemento es el nombre de la columna.
Por ejemplo, para acceder al primer nombre de columna se puede usar esto:
say "Nombre primera columna: $sth->{NAME}->[0]";Más información en la sección
Statement Handle Attributes de
DBI. Ver también primer ejemplo de la sección
Simple Examples.
También, usando
$sth->fetchall_arrayref({}) o
fetchall_hashref() se obtiene la referencia a un
hash cuyas claves son los nombres de las columnas, pero con el problema conocido de que esas claves (columnas) no salen en el mismo orden en que se describe en la definición de la tabla (por ser un
hash Perl, desde luego), con lo que en algunas situaciones no es deseable (algunas aplicaciones requieren conocer el orden de las columnas).