最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ADODB 入門第2/2頁

 更新時(shí)間:2006年12月03日 00:00:00   作者:  

11. 更新記錄(Update)

您可以用傳統(tǒng)的方式:

$sql ="UPDATE t SET name='john', year=28 WHERE year=18";
$conn->Execute($sql);


也可以用以下這種方式:

<?php

// 引入 ADODB
include('adodb/adodb.inc.php');

// 建立聯(lián)機(jī)對象
$conn = &ADONewConnection('mysql');

// 偵錯(cuò)
$conn->debug=true;

// DSN 四項(xiàng)基本數(shù)據(jù)設(shè)定
$mch="localhost";
$user="piza";
$pwd="ooo123";
$database="test";

// 連接至數(shù)據(jù)庫 test
$conn->PConnect($mch, $user, $pwd, $database);

// 選擇要更新的那一筆記錄
$sql = "select * from t where year=18";

$rs = $conn->Execute($sql);


// 用一個(gè)空數(shù)組來裝要更新的數(shù)據(jù)
$r = array();

$r['name']='john';
$r['year']=28;

// 用 GetUpdateSQL 函式來制作一個(gè)完整的 sql 命令,此 sql 命令放在 $updateSQL 中
$updateSQL = $conn->GetUpdateSQL($rs, $r);

// 執(zhí)行更新
$conn->Execute($updateSQL);

$conn->Close();
?>


偵錯(cuò)訊息如下:

-------------------------------------------------------------
(mysql): select * from t where year=18
-------------------------------------------------------------
(mysql): UPDATE t SET name = 'john', year = 28 WHERE year=18
-------------------------------------------------------------

12. 刪除記錄(Delete)

刪除記錄很簡單,采傳統(tǒng)方式即可: $sql = "DELETE FROM t WHERE year=18";

$rs = $conn->Execute($sql);

13. 使用字段對象(Field Objects)

這里示范字段對象 FetchField 的用法,用以取得字段名稱及字段型態(tài):

$sql = "select * from t";

$rs = &$conn->Execute($sql);

if ($rs) {
   while (!$rs->EOF) {
    // 取出第二個(gè)字段
    $f = $rs->FetchField(1);

    // 印出字段名稱 及 字段型態(tài)
    print $f->name . ":" . $f->type;

    $rs->MoveNext();

    print "<br>\n";
   }
}
 

另外,ADODB 提供一個(gè) RecordSet 函式 MetaType(),可將原始的字段型態(tài)轉(zhuǎn)成一般型態(tài)代碼:

C : 字符
X : text
B : blob
D : 日期
T : timestamp
L : 布爾值或位
I : 整數(shù)
N : 數(shù)字型態(tài),包括:自動(dòng)增加、數(shù)值、浮點(diǎn)數(shù)、實(shí)數(shù)及整數(shù)
R : serial、自動(dòng)增加


用例: 

    $f = $rs->FetchField(1);

    // 印出字段名稱 及 字段型態(tài)的代碼
    print $f->name . ":" . $rs->MetaType($f->type);

14. 簡單分頁(Pager)

ADODB 提供一種簡單分頁顯示記錄的方法,使用前,要將 adodb-pager.inc.php 引入。

<?php

include('adodb/adodb.inc.php');

// 引入分頁功能
include('adodb/adodb-pager.inc.php');

// 啟動(dòng) session
session_start();

$db = ADONewConnection('mysql');

$mch="localhost";
$user="piza";
$pwd="ooo123";
$database="test";

$db->Connect($mch, $user, $pwd, $database);

$sql = "select * from t";

// 產(chǎn)生 pager 對象
$pager = new ADODB_Pager($db, $sql);

// 每一頁秀 5 筆記錄
$pager->Render($rows_per_page=5);

?>


結(jié)果如下:

Figure 1. 簡單分頁功能


每頁顯示記錄的數(shù)目是由 Render() 來控制的,若沒有傳入指定的 row 數(shù)給 Render(),默認(rèn)值每頁秀 10 筆。

另外,字段名稱也可以改變,如下示范:

<?php

include('adodb/adodb.inc.php');

// 引入分頁功能
include('adodb/adodb-pager.inc.php');

// 啟動(dòng) session
session_start();

$db = ADONewConnection('mysql');

$mch="localhost";
$user="piza";
$pwd="ooo123";
$database="test";

$db->Connect($mch, $user, $pwd, $database);

$sql = "select name as '姓名', year as '年紀(jì)' from t";

// 產(chǎn)生 pager 對象
$pager = new ADODB_Pager($db, $sql);

// 每一頁秀 5 筆記錄
$pager->Render($rows_per_page=5);
?>


結(jié)果如下:

Figure 2. 改變字段名稱


15. 輸出 CSV 檔

ADODB 提供輸出 CSV 檔的方法,使用前,要將 toexport.inc.php 引入。

<?php

include('adodb/adodb.inc.php');

// 引入輸出 CSV 文件功能
include('adodb/toexport.inc.php');

$db = ADONewConnection('mysql');

$mch="localhost";
$user="piza";
$pwd="ooo123";
$database="test";

$db->Connect($mch, $user, $pwd, $database);

$sql = "select name as '姓名', year as '年紀(jì)' from t";

$rs = $db->Execute($sql);

// 秀出 CSV 格式
print rs2csv($rs);
?>


結(jié)果如下:

姓名,年紀(jì)
abcde,45
yyy,20
ppp,34
mmm,13
hhh,41
rrr,65
kkk,29
miso,154
sss,89
abc,18
abcde,0
uyt,58
john,28


也可用 tab 分隔字段,使用 rs2tab 方法如下:

print rs2tab($rs, false);

注: false 表示不顯示字段名稱

結(jié)果如下:

abcde  45
yyy    20
ppp    34
mmm    13
hhh    41
rrr    65
kkk    29
miso   154
sss    89
abc    18
abcde  0
uyt    58
john   28

若是 print rs2tab($rs, true);
結(jié)果如下:

姓名    年紀(jì)
abcde   45
yyy     20
ppp     34
mmm     13
hhh     41
rrr     65
kkk     29
miso    154
sss     89
abc     18
abcde   0
uyt     58
john    28


也可以將結(jié)果由標(biāo)準(zhǔn)輸出(STDOUT)顯示,使用 rs2tabout 方法如下:

print rs2tabout($rs);


執(zhí)行結(jié)果如下:

Figure 1. 在console中顯示結(jié)果


也可以存成 CSV 檔:

// 檔案路徑
$path = "/tmp/test.csv";

// 開檔供寫入
$fhd = fopen($path, "w");

// 若開檔成功
if ($fhd) {

   // 則寫入 CSV
   rs2csvfile($rs, $fhd);

   // 也可以使用 rs2tabfile($rs, $fhd);

   // 關(guān)檔
   fclose($fhd);
}

結(jié)果如下:

[ols3@p web]$ cat /tmp/test.csv
姓名,年紀(jì)
abcde,45
yyy,20
ppp,34
mmm,13
hhh,41
rrr,65
kkk,29
miso,154
sss,89
abc,18
abcde,0
uyt,58
john,28

16. 取出一定筆數(shù)的記錄 (使用 SelectLimit)

ADODB 提供一個(gè) ADOConnect 函式 SelectLimit,可供您取出一定筆數(shù)的記錄,用法如下:

$conn->Connect($mch, $user, $pwd, $database);

rs = $conn->SelectLimit("Select * from t", 3, 1);
//                             取出 3 筆、在第 1 筆之后

// 秀出這 3 筆記錄
if ($rs) {
    while( $ar = $rs->FetchRow() ) {
        print $ar['name'] ." " . $ar['year'];
        print "<br>\n";
    }

}


上式是說:在第 1 筆記錄之后,取出 3 筆,也就是第 2、3、4 筆記錄。

結(jié)果如下:

--------------------------------------
(mysql): select * from t LIMIT 1,3
--------------------------------------

注意 ! SelectLimit 的寫法剛好和 MySQL 語法相反 !

17. 結(jié)語

本講義,主要是為:有心參與 SFS3 (sfs.wpes.tcc.edu.tw) 計(jì)劃的伙伴們而寫的。做為一份入門文件,以上這些介紹,應(yīng)該是足夠讓您了解 ADODB 并且能把它應(yīng)用在 SFS3 或其它有意義的地方了吧? 若果真如此,小弟就心滿意足了 !

ref. 參考資源

ADODB 網(wǎng)站

ADODB 手冊

PHP 對象導(dǎo)向入門

相關(guān)文章

  • mysql數(shù)據(jù)庫卡頓問題排查過程

    mysql數(shù)據(jù)庫卡頓問題排查過程

    介紹了四種排查數(shù)據(jù)庫問題的方法,包括查看SQL運(yùn)行情況、庫和表信息、數(shù)據(jù)庫配置情況以及重啟數(shù)據(jù)庫,每種方法都有具體的操作步驟和注意事項(xiàng),旨在幫助讀者解決數(shù)據(jù)庫資源不足、死鎖等問題
    2025-02-02
  • MySQL數(shù)據(jù)庫表被鎖、解鎖以及刪除事務(wù)詳解

    MySQL數(shù)據(jù)庫表被鎖、解鎖以及刪除事務(wù)詳解

    這篇文章主要給大家介紹了關(guān)于MySQL數(shù)據(jù)庫表被鎖、解鎖以及刪除事務(wù)的相關(guān)資料,需要的朋友可以參考下
    2022-05-05
  • 解決MySQL主從數(shù)據(jù)庫沒有同步的兩種方法

    解決MySQL主從數(shù)據(jù)庫沒有同步的兩種方法

    這篇文章主要介紹了解決MySQL主從數(shù)據(jù)庫沒有同步的兩種方法,需要的朋友可以參考下面文章內(nèi)容
    2021-09-09
  • MySQL入門(五) MySQL中的索引詳講

    MySQL入門(五) MySQL中的索引詳講

    之前寫到MySQL對表的增刪改查(查詢最為重要)后,就感覺MySQL就差不多學(xué)完了,沒有想繼續(xù)學(xué)下去的心態(tài)了,原因可能是由于別人的影響,覺得對于MySQL來說,知道了一些復(fù)雜的查詢,就夠了
    2018-07-07
  • 詳解MySQL中的NULL值

    詳解MySQL中的NULL值

    這篇文章主要介紹了MySQL中的NULL值的相關(guān)知識(shí),是MySQL入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下
    2015-05-05
  • 快速修改mysql密碼的四種方法示例詳解

    快速修改mysql密碼的四種方法示例詳解

    mysql密碼忘記怎么辦,如何快速修改mysql密碼,下面給大家?guī)硭姆N方法快速修改mysql密碼,感興趣的朋友跟隨小編一起看看吧
    2023-01-01
  • 關(guān)于mysql主備切換canal出現(xiàn)的問題解決

    關(guān)于mysql主備切換canal出現(xiàn)的問題解決

    這篇文章主要給大家介紹了關(guān)于mysql主備切換canal出現(xiàn)的一些問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • MySQL參數(shù)優(yōu)化信息參考(my.cnf參數(shù)優(yōu)化)

    MySQL參數(shù)優(yōu)化信息參考(my.cnf參數(shù)優(yōu)化)

    下面針對一些參數(shù)進(jìn)行說明,當(dāng)然還有其它的設(shè)置可以起作用,取決于你的負(fù)載或硬件:在慢內(nèi)存和快磁盤、高并發(fā)和寫密集型負(fù)載情況下,你將需要特殊的調(diào)整
    2024-07-07
  • mysql字符集和校對規(guī)則(Mysql校對集)

    mysql字符集和校對規(guī)則(Mysql校對集)

    字符集的概念大家都清楚,校對規(guī)則很多人不了解,一般數(shù)據(jù)庫開發(fā)中也用不到這個(gè)概念,mysql在這方便貌似很先進(jìn),大概介紹一下
    2012-07-07
  • mysql 5.7.5 m15 winx64.zip安裝教程

    mysql 5.7.5 m15 winx64.zip安裝教程

    這篇文章主要為大家詳細(xì)介紹了mysql 5.7.5 m15 winx64.zip安裝教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-06-06

最新評論

安化县| 玛曲县| 马山县| 遂川县| 定边县| 汉寿县| SHOW| 黄龙县| 登封市| 景德镇市| 呼玛县| 综艺| 神农架林区| 霍林郭勒市| 抚顺县| 九江市| 金乡县| 奉新县| 乐陵市| 五峰| 连山| 青阳县| 凤台县| 牙克石市| 东台市| 嘉鱼县| 衢州市| 陕西省| 邯郸市| 巫溪县| 嘉义县| 南宫市| 吉木乃县| 泉州市| 乌鲁木齐市| 张掖市| 介休市| 寻甸| 梅河口市| 耿马| 白水县|