Hoàng Web

Thiết Kế Website WordPress

  • Kho giao diện
  • Dịch Vụ
    • Thiết kế web giá rẻ
    • Thiết kế website WordPress
    • Hosting Miễn Phí 100GB
    • Tích hợp thanh toán MoMo, ViettelPay, Vietcombank, MB..
    • Tối ưu Google PageSpeed
    • Sửa lỗi nâng cấp website
    • Viết plugin WordPress
    • Code Tool theo yêu cầu
  • Bảng giá
  • Quy trình làm việc
  • Giới thiệu
  • Liên Lạc
Trang chủ » Programming » PHP » Thư viện Mysql PHP Wrapper – ADOdb

Thư viện Mysql PHP Wrapper – ADOdb

Chủ Nhật, 05/10/2014 by Hoàng Quách

Nội dung

  • 1 Kết nối Database
  • 2 Truy xuất dữ liệu
  • 3 Thay đổi dữ liệu
  • 4 Tăng tốc truy vấn SQL bằng Cache
  • 5 Hiển thị lỗi
  • 6 Hỗ trợ PHP5
  • shares
  • Facebook
  • Facebook Messenger
  • Gmail
  • Viber
  • Skype

Trước đây, bạn không sử dụng thư viện mysql php cho công việc lưu trữ dữ liệu vào database. Thủa bắt đầu làm quen với php và mysql chúng ta thường sử dụng các hàm kết nối vào mysql và hàm thông thường của php để đọc, viết bản ghi vào bảng database. Sử dụng php mysql sơ khai làm cho bạn mất thời gian viết những đoạn code phục vụ cho việc truy xuất và thay đổi dữ liệu trong csdl và cũng không chuyên nghiệp nữa. Viết nhiều dòng code, nhưng không hữu dụng làm bạn đau dầu và mất tập trung vào code chính.
adodb-databases[1]

Trong bài hôm nay mình giới thiệu thư viện MySQL dùng cho PHP sẽ giúp bạn tương tác với mysql một cách dễ dàng đó là “ADOdb”.
ADOdb hiện tại hỗ trợ rất nhiều cơ sở dữ liệu phổ biến hiện nay như: MySQL, PostgreSQL, Interbase, Firebird, Informix, Oracle, MS SQL, Foxpro, Access, ADO, Sybase, FrontBase, DB2, SAP DB, SQLite, Netezza, LDAP, và generic ODBC, ODBTP được phát triển bởi cộng đồng ADOdb.
Lý do bạn nên dùng ADOdb:

  • Tốc độ sử lý nhanh. Là thư viện có tốc độ nhanh nhất trong số các thư viện hỗ trợ mysql của PHP.
  • Nhiều tính năng cho cá nhân và doanh nghiệp. ví dụ database backed sessions, SQL code generation..
  • Dễ dàng sử dụng.
  • Được rất nhiều cộng đồng sử dụng.

Trước tiên, bạn tải thư viện ADOdb tại đây.

Kết nối Database

Kết nối mysql với đoạn code sau:

include('/path/to/adodb.inc.php');
$DB = NewADOConnection('mysql');
$DB->Connect($server, $user, $pwd, $db);

Tên driver mình kết nối là ‘mysql’. Có thể thay thế các dòng code trên với một địa chỉ database URI đầy đủ được yêu cầu chuỗi URI phù hợp cho từng driver. Ví dụ nếu bạn sử dụng mysql thì URI gồm tên driver, user, pass, host theo cấu trúc như sau:

# Alternative URI connection syntax:
$DB = NewADOConnection("mysql://$user:$pwd@$server/$db?persist");

Lưu ý: Cung cấp MySQL URI ở trên, bạn không cần gọi phương thức $DB->Connect để tạo kết nối tới CSDL nữa.

Truy xuất dữ liệu

Thực thi mọi lệnh SQL bởi hàm Execute, phương thức hỗ trợ nhiều dạng lệnh SELECT SQL. ví dụ sau lấy nội dung table theo kiểu PEAR.

# PEAR style data retrieval
$rs = $DB->Execute("select * from table where key=123");
while ($array = $rs->FetchRow()) {
    print_r($array);
}

Tích hợp cho Microsoft SQL.

# M'soft style data retrieval with binds
$rs = $DB->Execute("select * from table where key=?",array($key));
while (!$rs->EOF) {
    print_r($rs->fields);
    $rs->MoveNext();
}

Retrieving data shortcuts

# retrieving data shortcuts
$val = $DB->GetOne("select col from table where key='John'");
$row = $DB->GetRow("select col from table where key='John'");
$arr = $DB->GetAll("select col from table");
$arr = $DB->GetAssoc("select key,col from table"); # returns associative array $key=>col

Thay đổi dữ liệu

Nên sử dụng lệnh SQL kiểu M’soft như ví dụ sau cập nhật dữ liệu field vào table sẽ rất hưu ích với các giá trị có ký tự quote.

$ok = $DB->Execute("update table set col1=? where key=?",array($colval, $key));

Bạn không phải dùng hàm mysql_real_escape_string tạo giá trị cho trường giống thế này:

$field1='sdnfhsdf"dfgjkb"dfjkghdig';
$rs = $DB->Execute('update table1 set key="'.mysql_real_escape_string($field1).'"');

Tăng tốc truy vấn SQL bằng Cache

Thực hiện lệnh SQL và lưu kết quả vào bộ nhớ trong vòng 3600 s.

# Retrieve high speed cached recordsets (cached for 3600 secs)

# Cache directory defined in  global $ADODB_CACHE_DIR. 

# CacheGetOne, CacheRow, CacheGetAll all work
$rs = $DB->CacheExecute(3600, "select orgname from users where user='JOHN'");

Hiển thị lỗi

$ok = $DB->Execute("update atable set aval = 0");
if (!$ok) mylogerr($DB->ErrorMsg());

Hỗ trợ PHP5

Từ phiên bản php5 có exception và SPL cho phép đổi kiểu dữ liệu linh hoạt. Bỏ qua phương thức FetchRow

$rs = $DB->Execute("select * from table");
foreach ($rs as $row) {
    print_r($row);
}

Tài liệu chi tiết, xem tại đây: http://adodb.sourceforge.net/docs-adodb.htm

Hãy cho mình biết suy nghĩ của bạn trong phần bình luận bên dưới bài viết này. Hãy theo dõi kênh chia sẻ kiến thức WordPress của Hoangweb trên Twitter và Facebook

  • shares
  • Facebook
  • Facebook Messenger
  • Gmail
  • Viber
  • Skype

Chuyên mục: PHP Tìm kiếm: mysql db, php

Tôi giúp gì cho bạn?

HOÀNG WEB

Địa chỉ: Tây Sơn, Phường Quang Trung, Quận Đống Đa, Hà Nội

Hotline: 0987 342 124 – 0868 292 303 (8h:00 – 21h:00)

Email: [email protected]

Website: www.hoangweb.com

KẾT NỐI VỚI TÔI

  • Facebook
  • GitHub
  • YouTube

SẢN PHẨM

  • Plugin Thanh Toán Quét Mã QR Code Tự Động
  • WP2Speed – Tối ưu Google Speed
  • 23WebHost – Hosting Miễn Phí 100GB

LIÊN KẾT

  • Có nên thuê thiết kế website giá rẻ?
  • Hướng dẫn thanh toán
  • Chính sách hoàn tiền
  • Trung tâm hỗ trợ

Copyright © 2023 | All rights reserved | HOANG WEB
Mọi hình thức sao chép nội dung trên website này mà chưa được sự đồng ý đều là trái phép.