Windows10を使用しています。ActivePerlのコードでMySQLの行列を呼び出す方法をお伺いします。DBD-mysqlはインストール済み。
使用させていただいたコードは次の通りです。
#!/usr/bin/perl
PERL MODULES WE WILL BE USING
use DBI;
use DBD::mysql;
HTTP HEADER
print "Content-type: text/html \n\n";
CONFIG VARIABLES
$platform = "mysql";
$database = "db1";
$host = "localhost";
$port = "3306";
$tablename = "t1";
$user = "username";
$pw = "password";
#DATA SOURCE NAME
$dsn = "dbi:mysql:$database:localhost:3306";
PERL DBI CONNECT (RENAMED HANDLE)
$dbstore = DBI->connect($dsn, $user, $pw) or die "Unable to connect: $DBI::errstr\n";
(出典:http://stackoverflow.com/questions/6649456/error-handling-on-dbi-connect)
エラーは次のように出ました。
DBI connect('db1:localhost:3306','username',...) failed: Access denied for user 'username'@'localhost'(using password: YES) at ... .pl line 23.
CONFIG VARIABLESの正しい記述がわかりません。socketは書く必要はありますか?またPERL DBI CONNECTの「DBI->connect」の後のカッコの中の書き方が特にわかりません。その前に$dsnで一度データソースを"dbi:mysql:$database:localhost:3306"と置いていた後その$dsnを「DBI->connect」の後に記述しているようです。この書き方ではconnectできないようです。「$dsn, $user, $pw」その他にも記述するのに必要な変数はありますでしょうか?23行目の何かが間違っているのかそれともそれ以外の行の書き方が違うのかわかりません。よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/09 02:06
2017/04/09 02:30
2017/04/09 05:37
2017/04/14 18:49 編集