이것이 모두 바보 같은 질문 일지 모르지만 어떻게해야할지 모르겠군요. 내가 perl을 사용하여 로컬 데이터베이스에 연결하려고합니다.DBD :: mysql :: st 실행에 실패했습니다 : 테이블 ''이 존재하지 않습니다.
$main::dbh = DBI->connect("dbi:mysql:databasename",
$main::user="username",
$main::password="password",
{PrintError => 1,
RaiseError => 1,
AutoCommit => 1})
or die "Can't connect to database: $DBI:errstr\n";
my $sth = $main::dbh->prepare("
SELECT table_name
FROM user_tables");
$sth->execute();
while (my ($table_name) = $sth->fetchrow_array()){
print "table_name = $table_name\n";
}
나는이 조각 도움이 내가 올바른 방법으로 내 질문에 넣어 가지고 희망 : 나는 명령을 실행하려고하면 나는 639이 같은 것입니다 오류
DBD::mysql::st execute failed: Table 'RegenMedline.user_tables' doesn't exist at Medlineparser.pl line 639.
내 선 아래 얻을. 더 많은 정보를 제공해야한다면 지금 알려주십시오. 어떤 도움이라도 대단히 감사합니다.
SELECT table_name FROM RegenMedline.samples'와 같은 작업을 수행하는 동안 MySQL이 'RegenMedline.user_tables'을 찾지 못하는 것이 이상합니다. –
정말 유감입니다. 코드를 편집했습니다. 코드를 가지고 놀고 있었고 user_tables로 다시 편집하는 것을 잊었습니다. 그 점을 지적 해 주셔서 감사합니다. – smandape
이것은 문제가 아니지만'$ table_name'은 스칼라가 아닌 목록 참조입니다. \\ "'print '와 같은 것을 말하고 싶을 것이다. table_name = $ table_name -> [0] \ n"' – mob