I have written a function that I for example invoke like so:
myfunction($id, { max => 90, cval => 89 });
The Dumper output of the resulting hash ends up something like the following:
$VAR1 = { 'D96C3A4B' => { 'cval' => '90', 'max' => '92' },
However, when I then store and retrieve these values from a little SQL database using selectall_hashref($sql, [ 'id','key']) they become:
'1C8962EB' => { 'cval' => { 'value' => '90', 'id' => '1C8962EB', 'key' => 'cval' }, 'max' => { 'value' => '92', 'id' => '1C8962EB', 'key' => 'max' } }
The table in question is simple, being created something like 'CREATE TABLE evkeypairs (id INT,key TEXT,value TEXT);'
Is it possible to craft or map the select in such a way so as to not insert the literal SQL column names similar to the format I use when calling myfunction()? Else, the many calls I will need to make to myfunction() will become tedious.
I would like (if at all possible) to avoid making any copies of the hash so as to avoid memory overhead.
Niel
In reply to selectall_hashref structure by 0xbeef
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |