使用perl执行SQL脚本

时间:2016-12-07 08:58:10

标签: mysql perl dbi

我需要提供一个SQL脚本,该脚本将由用户从网页上提供。 我正在使用perl CGI获取文件及其内容,但无论何时我运行

my $sth = $dbh->prepare("SOURCE /path/to/mysql/script.sql");
$sth->execute() || die $DBI::errstr;

它抛出一个错误说

  

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在#SOURCE /path/to/mysql/script.sql'附近使用正确的语法;

但同样的声明在MySQL shell中运行良好。

还有其他方法可以执行MySQL脚本吗?

请注意,此脚本可以包含从DDL语句到多个插入到过程的任何内容。这一切都取决于上传它的用户。

另外,

system("mysql < /path/to/mysql/script.sql");

正在抛出与$ENV{}

相关的错误(或警告?)

0 个答案:

没有答案