У меня есть куча DOI, разделенных '\n'
в * .txt-файле. Perl-скрипт, который я написал, должен читать каждую строку файла и выполнять запрос select. Однако программа не может выполнить SQL-запрос. Не могли бы вы помочь мне решить проблему?Невозможно выполнить SQL-запросы
После выполнения я получаю следующее сообщение об ошибке:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' http://dx.doi.org/10.1002/1521-3757(20001103)112:21 <3947::aid-ange3947>3.0'
Первая строка файла dois.txt содержит следующую DOI:
`http://dx.doi.org/10.1002/1521-3757(20001103)112:21<3947::aid-ange3947>3.0.co;2-k`
Вот мой код:
my $file = 'dois.txt';
open(my $fh, '<:encoding(UTF-8)', $file)
or die " Could not open file $file";
while (my $doi = <$fh>) {
chomp($doi);
my $sth = $dbh->prepare("select * from mytable where doi = ''$doi'';");
$sth->execute || die "failed to execute:\n ", $DBI::Errstr;
print $sth->fetchrow_array, "\n";
}
close FH;
$dbh->disconnect;
создать строку и опубликовать ее из '" select * from mytable, где doi = '' $ doi ''; "' – Drew