-2

perl DBI を使用して、perl によって生成されたデータを Oracle データベース テーブルに挿入しようとしています。これを試したのは初めてなので、単純な間違いを犯している可能性があります。

私が現在使用しているのは次のとおりです。

$dbh = DBI->connect ('dbi:Oracle:geosgen','student','train')
  || die "Database connection not made: $DBI::errstr";

  $sql = "INSERT INTO MYTEST VALUES ($series, $sheet, $maxlat, $minlat, $maxlong, $minlong)";

  $create = $dbh->do($sql);
  print "Content-type:text/html\n\n\n";
if($Create){
print "Success";
}
else{
print "Failure<br/>$DBI::errstr";
}

そして、私が得る出力は次のようなものです:

DBD::Oracle::db do failed: ORA-00917: missing comma (DBD ERROR: error possibly near <*> indicator at char 36 in 'INSERT INTO MYTEST VALUES (Scotland <*>one inch 1st, Shetland Islands (North) (131), -0.6800, -1.4100, 60.9700, 60.6900)') [for Statement "INSERT INTO MYTEST VALUES (Scotland one inch 1st, Shetland Islands (North) (131), -0.6800, -1.4100, 60.9700, 60.6900)"] at bruce1.pl line 69, <INPUT> line 924. Content-type:text/html

データを正常に読み取ったが失敗したことを意味します。私は初歩的なミスを犯したと思いますが、明らかなことはありますか?

4

1 に答える 1

4

SQL では、アルファベット定数を引用符で囲む必要があります。

MYTEST 値に挿入 (「スコットランド 1 インチ 1 位」、「シェトランド諸島 (北) (131)」、-0.6800、-1.4100、60.9700、60.6900)

$sql の値を出力すると、そうではないことがわかります。

于 2013-06-05T21:08:15.853 に答える