首頁 >後端開發 >php教程 >如何實作一個php框架系列文章mysql資料庫

如何實作一個php框架系列文章mysql資料庫

WBOY
WBOY原創
2016-07-29 09:00:441168瀏覽

實作一個mysql資料庫封裝需要考慮的問題

  1. 使用方便性

採用直接sql語句操作方式。只要會寫sql語句,那麼就沒有其他學習成本。

uctphp框架提供的dba輔助封裝類,用會之後將愛不釋手。

使用前需要顯示初始化並連接到資料庫嗎,當然不需要。

直到執行第一個sql語句之前,都不會去連接資料庫,甚至不會new一個db物件。

dba將會在適當的時機去連接資料庫並執行初始化字元編碼操作。

查詢語句。不需要new一個查詢建構器也不提供鍊式操作方式,那麼複雜且低效。

dba提供了以下的查詢輔助函數。

75

1

2

3

4

5

6

7

5

91

12

//讀一個值

Dba::readOne($sql

);//讀一行

//讀所有行

Dba::readAllAssoc($sql);

//讀取所有行的第一列

//在實際業務場景中,經常會有分頁讀取部分資料的情況。 //只要一個函數即可傳回指定頁碼的資料內容與資料總數

Dba::readCountAndLimit(

$sql);

ps:以上部分函數可以提供一個map函數對傳回陣列的每一行進行加工處理。

寫語句。為什麼要區分read和write呢,顯然可以擴充做到控制讀寫分離,雙寫等功能。

在有各種雲端資料庫和資料庫中間件的今天,在資料庫層實現是更好的選擇。

12345

6

91

12

13

1415);    

Dba::write(

$sql

);

/* 直接插入或更新kvue形式的arrayyal

值。

如果自己寫sql語句要注意使用addslashes或mysql_real_escape_string來確保安全

*/

Dba::insert

*/

Dba::update($table

$update

$where

); 

對大量插入資料有較高的效率

    

當然過多的行數應該用array_chunk來分批插入。

*/Dba::insertS($table

$inserts

使用pdo支援事務 123

Dba::beginTransaction();

);DDba::beginTransaction();

3. 長時間運行

在一些需要長時間運行的場景如swoole服務,後台worker等,可能會出現資料庫連接超時的情況。

當發現資料庫連線逾時,dba將會自動嘗試重連。

以上就介紹如何實作一個php框架系列文章mysql資料庫,包含了方面的內容,希望對PHP教學有興趣的朋友有幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:php資料類型下一篇:php資料類型