日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > 数据库 >内容正文

数据库

mysql adodb_指南从MySQL转向ADODB的方法_MySQL

發(fā)布時(shí)間:2023/12/14 数据库 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql adodb_指南从MySQL转向ADODB的方法_MySQL 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

高級(jí)材料

Insert 和 Update

假設(shè)現(xiàn)在你要把下面的數(shù)據(jù)插入到數(shù)據(jù)庫(kù)中.

ID = 3

TheDate=mktime(0,0,0,8,31,2001) /* 31st August 2001 */

Note= sugar why don't we call it off

當(dāng)你使用另外一個(gè)數(shù)據(jù)庫(kù)的時(shí)候,你的插入操作可能不會(huì)成功。

第一個(gè)問(wèn)題是每個(gè)數(shù)據(jù)庫(kù)都有不同的默認(rèn)日期格式。MySQL默認(rèn)格式是YYYY-MM-DD ,然而其它數(shù)據(jù)庫(kù)有不同的默認(rèn)格式。ADODB有一個(gè)DBDate()的函數(shù),它能將日期轉(zhuǎn)換成正確的格式。

接下來(lái)的一個(gè)問(wèn)題是Note字段值里的don't 應(yīng)該作為引文。在MySQL中,使用don't 來(lái)解決這個(gè)問(wèn)題,但在一些其它的數(shù)據(jù)庫(kù)中(Sybase, Access, MicrosoftSQL Server)使用don''t 。qstr()解決了這個(gè)問(wèn)題。

那么我們?cè)趺词褂眠@個(gè)函數(shù)呢? 像下面這樣:

$sql = "INSERT INTO table (id, thedate,note) values ("  . $ID . ','  . $db->DBDate($TheDate) .','  . $db->qstr($Note).")";$db->Execute($sql);ADODB 也支持 $connection->Affected_Rows() (返回上次update或delete操作影響的行數(shù)) 和 $recordset->Insert_ID() (返回insert聲明生成的上一個(gè)自增編號(hào))。但要說(shuō)明的是不是所有的數(shù)據(jù)庫(kù)都支持這兩個(gè)函數(shù)。

MetaTypes

你可以找到更多關(guān)于你調(diào)用recordset的方法FetchField($fieldoffset)所選擇的每個(gè)字段(我同時(shí)使用字段和列這兩個(gè)詞)的信息。它將返回一個(gè)有三個(gè)屬性(名稱,類型和最大長(zhǎng)度)的對(duì)象。

例如:$recordset = $conn->Execute("select adate from table");

$f0 = $recordset->FetchField(0);那么 $f0->name 的值將被設(shè)為 'adata', $f0->type 的值將被設(shè)為 'date'. 如果max_length 未知,它被設(shè)為-1。

處理不同類型的數(shù)據(jù)庫(kù)的一個(gè)問(wèn)題是每個(gè)數(shù)據(jù)庫(kù)常常用不同的名字來(lái)調(diào)用相同的類型。例如timestamp 類型在某一個(gè)數(shù)據(jù)庫(kù)中叫做datetime 類型,而在另一個(gè)是叫做time類型。 因此 ADODB 有個(gè)專門的 MetaType($type, $max_length) 函數(shù)對(duì)下面的類型進(jìn)行標(biāo)準(zhǔn)化:

C: character 和 varchar 類型

X: text 或者 long character (例如.多于255 字節(jié)寬度).

B: blob 或者 binary 圖像

D: date

T: timestamp

L: logical (boolean)

I: integer

N: numeric (float, double, money)

在上面的例子中,

$recordset = $conn->Execute("select adate from table");

$f0 = $recordset->FetchField(0);

$type = $recordset->MetaType($f0->type, $f0->max_length);

print $type; /* 應(yīng)該顯示 'D' */

Select Limit 和 Top 支持

ADODB 有一個(gè)叫$connection->SelectLimit($sql,$nrows,$offset)的函數(shù),它允許你獲得一個(gè)記錄集(recordset)的子集。它會(huì)在Microsoft產(chǎn)品上使用本地的SELECT TOP,在PostgreSQL和MySQL上使用SELECT ... LIMIT,并在不支持這項(xiàng)功能的數(shù)據(jù)庫(kù)上模擬這個(gè)功能。

緩存支持

ADODB 允許你在你的文件系統(tǒng)上緩存記錄集結(jié)果,只需用$connection->CacheExecute($secs2cache,$sql)和$connection->CacheSelectLimit($secs2cache,$sql,$nrows,$offset)在指定的超時(shí)時(shí)間段后重新向數(shù)據(jù)庫(kù)服務(wù)器發(fā)出查詢。

PHP4 Session 處理接口支持ADODB 也支持PHP4 session 處理接口. 你可以使用ADODB在一個(gè)數(shù)據(jù)庫(kù)中存儲(chǔ)你的session變量。要獲得更多下信息,訪問(wèn)http://php.weblogs.com/adodb-sessions鼓勵(lì)作為商業(yè)用途

如果你正計(jì)劃編寫你要轉(zhuǎn)售的商業(yè)PHP軟件產(chǎn)品,你應(yīng)該考慮ADODB。ADODB使用GPL發(fā)布。這意味這你也可以在商業(yè)軟件中合法的使用它,同時(shí)保持你的代碼所有權(quán)。十分鼓勵(lì)A(yù)DODB作為商業(yè)用途!因?yàn)樯鲜龅脑蛭覀儍?nèi)部也正在使用它。

相關(guān)標(biāo)簽: 數(shù)據(jù)庫(kù)

本文原創(chuàng)發(fā)布php中文網(wǎng),轉(zhuǎn)載請(qǐng)注明出處,感謝您的尊重!

總結(jié)

以上是生活随笔為你收集整理的mysql adodb_指南从MySQL转向ADODB的方法_MySQL的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。