連線資料庫進行操作 埠修改

2021-09-29 14:23:44 字數 2248 閱讀 3897

dbi(database inte***ce)是perl連線資料庫的介面。其是perl連線資料庫的最優秀方法,他支援包括orcal,sybase,mysql,db2等絕大多數的資料庫

perl 環境 : yum install perl-devel

dbi連線mysql : yum -y install perl-dbd-mysql

或者單獨裝dbi、data-showtable、dbd-mysql 三個元件

#!/usr/bin/perl -w

use utf8;

use strict;

use dbi;

my $host = ""; # 主機位址

my $driver = "mysql"; # 介面型別 預設為 localhost

my $port = "";

my $database = ""; # 資料庫

my $dsn = "dbi:$driver:database=$database:$host:$port" or die "can't connect to database ". $dbi::errstr;

my $userid = ""; # 資料庫使用者名稱

my $password = ""; # 資料庫密碼

my $dbh = dbi->connect($dsn, $userid, $password );

my $sth = $dbh->prepare("select * from websites"); # 預處理 sql 語句

$sth->execute(); # 執行 sql 操作

$sth->finish();

$dbh->commit or die $dbi::errstr;

my $name = "twitter";

my $url = "";

my $alexa = 10;

my $conutry = "usa";

my $sth = $dbh->prepare("insert into websites

(name, url, alexa, conutry )

values

(?,?,?,?)");

$sth->execute($name,$url,$alexa, $conutry)

or die $dbi::errstr;

$sth->finish();

$dbh->commit or die $dbi::errstr;

如果在 sql 執行過程中發生錯誤,可以回滾資料,不做任何改變:

$dbh->rollback or die $dbh->errstr;和其它的語言一樣, perl dbi對資料庫的操作也支援事務處理, 它的實現方式有兩個:

$dbh = dbi->connect($dsn, $userid, $password, ) or die $dbi::errstr;

以上**在連線的時候設定了autocommit為false, 也就是說當你對資料庫進行更新操作的時候, 它不會自動地把那些更新直接寫到資料庫裡, 而是要程式通過 $dbh->commit 來使資料真正地寫到資料庫裡, 或 $dbh->rollback 來回滾剛才的操作。

這種方式就不需要在連線資料庫的時候設定 autocommit = 0 。

可以一次資料庫連線進行多次事務操作, 不用每一次事務的開始都去連線一次資料庫。

$rc = $dbh->begin_work or die $dbh->errstr;

#######################這裡執行一些 sql 操作#####################

$dbh->commit; # 成功後操作-----------------------------$dbh->rollback; # 失敗後回滾如果我們需要斷開資料庫連線,可以使用 disconnect api:

$rc = $dbh->disconnect or warn $dbh->errstr;

連線資料庫操作

有一段時間沒有寫部落格了,今天我來說說資料庫的連線操作。首先我都知道ado.net這門技術,其實我自己之前也學過幾次,但只學了一點皮毛,跟著老師走也看得懂,但是自己就不會敲出來,前段時間我又在學習這個,也覺得自己這次應該是真的學懂了吧!我們就以mssqlserver為例來講解資料庫連線操作,首先我們...

python 連線資料庫SQL並進行操作

import pymysql conn pymysql.connect host rm rdsyuncs.com 位址 user train rs passwd trs123 密碼 db train recommended sys 這個是資料庫裡面你想要操作的資料庫名稱 charset utf8 使...

VC ADO連線資料庫操作

vc ado連線資料庫操作 收藏 1 引入ado類 import c program files common files system ado msado15.dll no namespace rename eof adoeof 2 初始化com 在mfc中可以用afxoleinit 非mfc環境...