windows下perl 连 mysql,使用DBI,DBD,请问谁能帮忙讲一下详细步骤,网上说得乱七八糟的,试好久失败了

 我来答
百度网友c9e795dda
2013-04-03 · TA获得超过5167个赞
知道大有可为答主
回答量:1128
采纳率:0%
帮助的人:1150万
展开全部
首先你要明白, DBI 是 Interface (界面), DBD 是 Driver ( 实际帮你存取 DB 的软件块 )
然後这个流程就是

1) DBI 会给你连上 driver, 你给的参数(id, password)也会透过 driver 给连上 DB.
2) 连上後, DBI 会给你返回一个 DB 的操作句柄 ( handle )
3) 最後你会透过这个 handle 去操作你的 DB

不过, 你的第一步是确定你的的 mySQL 已经运作, 你可以透过 console 存取 DB.

第二, 确定你的 perl 是否已安装了 mysql 的块;

use DBI;
@drivers= DBI->available_drivers;
print "@drivers";
如果没有, 请先安装这个 driver (DBD::mysql)

第三, 尝试连接

use DBI;
$dbh = DBI->connect('DBI:mysql:databasename', 'username', 'password' )
|| die "Could not connect to database: $DBI::errstr";

如果你的 db 不在本机, 你得写成

$dbh = DBI->connect('DBI:mysql:databasename;host=192.168.xxx.xxx', # 加入 DB 的 host
'username', 'password', { RaiseError => 1 } );
如果你死在这里, 那麼, 请给出你得到的错误
留意, 你实在要操作的是 $dbh , 不是 $dbi.

最後, 你说到网上说得乱七八糟的,试好久失败了. 请问, 你理解的是怎样的 ? 你试了甚麼 ? 怎样的失败 ? 报甚麼的错 ?
追问
你好有耐心哦~我今天早上弄出来了,昨天试了半天~我的perl程序是可以编译的,mysql也是可以用的,就是在连的时候,网上说的,输入perl -MCPAN e shell install dbi,说我没有C编译器,我又去下编译器,还是不行~还有有个用ppm的,那个批处理文件半小时了都没运行出来,我就不知道我是什么问题,今天早上利用http://dcx.sybase.com/1201/zh/dbprogramming/dbd-sqlany-install-windows.html弄出来的~最后,真心谢谢你啦~
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式