perl中乙個很重要的模組就是dbi模組(perl database inte***ce,資料庫介面)。dbi模組為很多不同的資料庫提供了乙個統一的介面。perl通過此介面可以很容易對資料庫進行操作。結構圖如下:
下面說下perl如何對mysql資料庫進行操作。
1. 首先要確保perl及mysql資料庫已經安裝。然後用cpan或者是ppm圖形化介面來安裝.
cpan> install dbi #安裝資料庫模組
cpan> install dbd::mysql #安裝資料庫驅動
2. 然後準備測試用資料庫指令碼: (admin.sql)
c:\program files\mysql\mysql server 5.5\bin> mysql -u root -pabcd3. 準備連資料庫指令碼:(conn_mysql.pl)#!c:\perl\bin\perl -w
#匯入dbi模組
use dbi;
use utf8;
use strict;
use warnings;
#連線資料庫
my $dbdrive = "mysql";
my $dbname = "admin";
my $hostname = "localhost";
my $port = "3306"; #mysql資料庫預設埠
my $database = "dbi:$dbdrive:$dbname:$hostname:$port";
my $db_user = "root";
my $db_pwd = "abcd";
my $dbh = dbi->connect($database,$db_user,$db_pwd) or die dbi::errstr;
#執行插入操作
my $rows = $dbh->do("insert into admin_info(admin_id,admin_user,admin_pwd)
values (003, 'root', 'root')");
print "$rows row(s) affected!\n";
#執行查詢操作
my $sth = $dbh->prepare("select * from admin_info");
$sth->execute();
#通過結果集進行迭代,並列印
while(my $ref = $sth->fetchrow_hashref()) \n";
print "admin_user: $ref->\n";
print "admin_pwd: $ref->\n";
print "----------n";
}#結束會話連線
$dbh->disconnect();
4. 結果如下:
總結:
1. 使用connect()函式建立資料庫連線。
2. 使用do()或prepare()以及execute()函式進行插入,查詢,刪除,更新操作
3. 使用fetchrow_hashref()函式,配合while,將遍歷資料,方便列印操作
4. 使用disconnect()函式,斷開資料庫連線,結束檔案控制代碼
總體來說,跟其他語言連資料庫操作步驟類似。
其他標誌說明:
perl推薦使用下列標誌作為約定
$dsn 資料庫源名
$dbh 資料庫處理物件
$sth 處理物件宣告
$h 任意上述三種處理型別 ($dbh, $sth, or $drh)
$rc 通用返回**(boolean: true=ok, false=error)
$rv 通用返回值(通常為乙個整數)
@ary 資料庫中返回的資料列表
$rows 要處理的行數(如果行數不存在的話,返回值為:-1)
$fh 檔案控制代碼
undef null值在perl中表示未定義的值
\%attr 引用雜湊屬性值傳給方法
pymysql模組運算元據庫
pymysql模組是python運算元據庫的乙個模組 connect 建立資料庫鏈結,引數是連線資料庫需要的連線引數 使用方式 模組名稱.connect 引數 host 資料庫ip port 資料庫埠 user 資料庫使用者名稱 passwd 資料庫密碼 db 資料庫名稱 charset 資料庫編碼...
python 模組 pymysql運算元據庫
pymysql是乙個模組,可讓python操作mysql 把pymysql模組匯入進來 先讓python可以連線上伺服器,並明確對伺服器上的哪乙個資料庫進行操作 從mysql模組中,匯入了connect函式 執行connect函式,傳入引數,最終得到乙個與mysql資料庫的連線物件 游標物件是我們執...
利用PyMySQL模組運算元據庫
import pymysql 建立鏈結得到乙個鏈結物件 conn pymysql.connect host 127.0.0.1 資料庫伺服器主機位址 user root 使用者名稱 password root 密碼 database test 資料庫名稱 port 3306,埠號 可選 整型 cha...