perl 鏈接mysql數據庫

#!/usr/bin/perl -w
use DBI;
use strict;
my $dbh=DBI->connect("DBI:mysql:database=cacti;host=localhost","root","admin",{'RaiseError'=>1});
my $sql = $dbh->prepare("select * from settings");
$sql->execute();
while (my @row = $sql->fetchrow_array ){
        print "@row\n";
}
$dbh->disconnect();mysql

perl鏈接mysql有兩種操做順序:sql

(1) my $sql = $dbh->do("select * from settings");數據庫

直接執行,而後在返回數據。數組

(2)my $sql = $dbh->prepare("select * from settings");服務器

準備着,只有遇到$sql->execute();時才執行。ide

鏈接和處理數據庫的一些語句:fetch

connect    創建到一個數據庫服務器的鏈接
disconnect   斷開數據庫服務器的鏈接
prepare    準備執行一個SQL語句
execute    執行準備好的語句
do    準備並執行一個SQL語句
quote    加引號於要插入的字符串或BLOB值
fetchrow_array   做爲一個字段數組取出下一行
fetchrow_arrayref  做爲一個字段的引用數組取出下一行
fetchrow_hashref  做爲一個哈希表的引用取出下一行
fetchall_arrayref  做爲一個字段數組取出全部數據
finish    完成一條語句而且讓系統釋放資源
rows    返回受影響的行數
data_sources   返回可在localhost上獲得的數據庫的數組
ChopBlanks   控制fetchrow_*方法是否剝去空格
NUM_OF_PARAMS   在準備的語句中的佔位(placeholder-參數)的數目
NULLABLE   其列能夠是NULL
trace    執行調試跟蹤調試

相關文章
相關標籤/搜索