用于报告的Perl框架 - 动态创建变量

时间:2015-08-20 06:06:28

标签: perl csv dynamic

我正在尝试为Perl设计一个框架,其中sql文件将保存在单独的文件中。 Perl脚本应该读取SQL文件并确定选择了多少列,它应该迭代SQL查询的输出并将它们写为CSV文件。最初我想从简单的查询开始,如:

select col1, col2 from table1;

因此Perl脚本应该迭代SQL输出并创建如下所示的CSV文件:

val1a,val1b

val2a,val2b

val3a,val3b

我面临的问题是我不知道如何动态创建变量数。假设SQL查询中有2列我必须有2个变量来存储列值并将其写入输出文件。如果有3列,则应该能够在不更改脚本的情况下创建3个变量。

如果有任何支持此功能的Perl外部模块,请提供建议。

1 个答案:

答案 0 :(得分:0)

do not want to create dynamic variables 。相反,您想要使用哈希。

如果您不熟悉此概念,请查看perlrefperlreftut。对于您的SQL互动,您应首先阅读DBI documentation,特别是fetchrow_hashreffetchrow_arrayref。要将数据写入CSV,请使用Text::CSV

/PRICE:\s+\$([\.\d]+)/g