【发布时间】:2013-10-27 08:25:00
【问题描述】:
我创建了数据库头作为哈希的键,并尝试将哈希值(数据类型:数组)插入 mysql 数据库。但它给出了语法错误。 以下是代码请建议做什么???
my @keys = keys %hash; #keys used as database headers
my @values=values %hash; #value to be inserted
my $sth=$dbh->prepare("INSERT INTO `$table`(@keys) VALUES (@values)");
$sth->execute() or die "ERROR writing to database: $DBI::errstr $dbh->errstr";
这是哈希(使用 Data::Dumper)
$VAR1 = bless( { '120493acNo' => [ '1' ], 'a120064amount' => [ '133' ], '120310amount' => [ '23' ]}, 'CGI' );
【问题讨论】:
-
为什么我的问题被降级了?
-
我没有投反对票,但我猜这是因为您没有显示哈希中的内容并且没有发布错误。
-
我没有否决这个问题,但我会询问您语法错误的细节。在 MySQL 中,语法错误非常有用 - 它们指向发生语法错误的确切位置。
-
此外,您似乎正在将列列表和值列表传递到 INSERT 中,而不用逗号分隔,正如 MySQL 所要求的那样,但我只是猜测。向我们展示语法错误,这可能会证实我的猜测。
-
对不起,伙计们,我的问题没有正确陈述:(