2014-10-04 101 views
2

我在Windows 7 64位機器上使用perl 5.18.1.1800和ppm 4.19。爲Perl 5.18.xx安裝DBI-mysql

我需要使用DBD-mysql才能從perl訪問mysql。但我得到以下錯誤信息:

use DBI(); 
my $dbh = DBI->connect("DBI:mysql:database=mydbname;host=localhost","myuser", "mypass",{'RaiseError' => 1}) 

install_driver(MySQL的)失敗:@公司無法找到CAD/mysql.pm(您 可能需要安裝DBD :: mysql的模塊)

所以我試圖安裝DBD-mysql,但我沒有在我的PPM中列出。在命令行中,當我嘗試安裝,我得到以下錯誤

ppm install DBD-mysql 

PPM安裝失敗:無法找到提供DBD-mysql的

我試圖下載和安裝任何包它,但它需要一個我沒有的C編譯器。

DBD-mysql info page,沒有提到模塊的Perl 5.18支持。

那麼,我應該恢復到5.16.xx還是其他問題呢?

謝謝,

回答

2

DBD-MySQL適用的activeperl-5.16.3.1604。恢復到該版本可能比安裝編譯器自己構建軟件包更簡單。

ActiveState的使用Visual Studio來構建DBD-mysql的:http://ppm4.activestate.com/MSWin32-x86/5.16/1600/C/CA/CAPTTOFU/DBD-mysql-4.022.d/log-20120830T032945.txt

enter image description here

C:\>ppm install DBD-mysql 
Downloading ActiveState Package Repository packlist...done 
Updating ActiveState Package Repository database...done 
Syncing site PPM database with .packlists...done 
Downloading DBD-mysql-4.022...done 
Unpacking DBD-mysql-4.022...done 
Generating HTML for DBD-mysql-4.022...done 
Updating files in site area...done 
    12 files installed 
+0

運行'C:\> ppm的安裝DBD-mysql'在命令提示符下完美地工作! – Navigatron 2015-04-14 12:00:15

0

該模塊的名稱是DBI。嘗試使用:

ppm install DBI 

*免責聲明:我沒有使用Perl的Windows上,而Perl的在Linux上,所以我以爲語法使用PPM是「PPM安裝模塊名」。

也,語法以下正確的是:

my $dbh = DBI->connect(DBI:mysql:DBNAME, $username, $pass, {RaiseError => 1, AutoCommit 
=> 1}) or die "Could not Connect to DB";