So you have a hash where keys are column names and values are arrayrefs of column values. In other words, data for a single record is spread over multiple arrays and this is, I gather, what irritates you, I am getting it right?
If so, then it might take some work to prepare it but a more intuitive data structure would be to have an array of hashrefs where each hashref will contain all necessary data for one db record, e.g.
[
{TAGET => 5, ACTIONTYPE =>2},
{TAGET => 6, ACTIONTYPE =>1},
]
Then, when you have to do insertions, you will loop through this array, and getting values for inserting each record will be trivial and easy to understand.
Hope this helps.