Bài 16: Các thao tác kết nối tới MySQL và lựa chọn CSDL bằng PHP

Bài viết này sẽ tập trung vào việc khai thác hệ quản trị CSDL miễn phí MySQL.

Tại sao lại sử dụng MySQL?

MySQL là một phần mềm quản trị CSDL mã nguồn mở, nằm trong nhóm LAMP (Linux - Apache -MySQL - PHP). "Liên minh" mã mở này đang được coi là một đối trọng với các sản phẩm mã đóng "đắt vãi..." (vãi gì thì tôi không biết ) của Microsoft (Windows, IIS, SQL Server, ASP/ASP.NET).

Một số đặc điểm của MySQL

MySQL là một phần mềm quản trị CSDL dạng server-based (gần tương đương với SQL Server của Microsoft).
MySQL quản lý dữ liệu thông qua các CSDL, mỗi CSDL không phải là không có  rất nhiều bảng quan hệ chứa dữ liệu.
MySQL có cơ chế phân quyền người sử dụng riêng, mỗi mọi người có thể được quản lý một hoặc rất nhiều CSDL khác nhau, mỗi mọi người có một tên truy cập (user name) và mật khẩu tương ứng để truy xuất đến CSDL.
Khi ta truy vấn tới CSDL MySQL, ta phải cung cấp tên truy cập và mật khẩu của tài khỏan có quyền sử dụng CSDL đó. Nếu không, chúng ta sẽ không làm được gì cả.

Các bước tạo lên chương trình có kết nối tới CSDL:

Thông thường, trong một ứng dụng có giao tiếp với CSDL, ta phải làm theo bốn trình tự sau:
Bước 1: Thiết lập kết nối tới CSDL.
Bước 2: Lựa chọn CSDL.
Bước 3: Tiến hành các truy vấn SQL, xử lý các kết quả trả về nếu có
Bước 4: Đóng kết nối tới CSDL.

Nếu như trong lập trình thông thường trên Windows sử dụng các chương trình điều khiển trung gian (ADO, ODBC...) để thực hiện kết nối và truy vấn, thì trong PHP, khi lập trình tương tác với CSDL, chúng ta thường sử dụng thông qua các hàm.

Chú ý: Trước khi sử dụng PHP để lập trình với MySQL, hãy sử dụng chương trình quản lý phpMyAdmin để tạo trước một CSDL, vài bảng cũng như người dùng... để tiện thực hành. Bài hướng dẫn sử dụng phpMyAdmin sẽ được trình bày sau.

Trong bài viết này, tôi sử dụng MySQL chạy trên nền máy chủ localhost, người sử dụng của CSDL này có username là mysql_user, mật khẩu là mysql_password

Thiết lập kêt nối tới MySQL.

Để kết nối tới MySQL, ta sử dụng hàm mysql_connect()
Cú pháp:
PHP Code:
mysql_connect(host,tên_truy_cập,mật_khẩu);
trong đó:
host là chuỗi chứa tên (hoặc địa chỉ IP) của máy chủ cài đặt MySQL.
tên_truy_cập là chuỗi chứa tên truy cập hợp lệ của CSDL cần kết nối
mật_khẩu là chuỗi chứa mật khẩu tương ứng với tên truy cập
Ví dụ:
PHP Code:
<?
mysql_connect ("localhost", "thu_mot_ti","thu_hai_ti");
?>
Khi kết nối tới MySQL thành công, hàm sẽ trả về giá trị là một số nguyên định danh của liên kết, ngược lại, hàm trả về giá trị false.
Ta không phải là không dùng hàm if để kiểm tra thông qua có kết nối được tới MySQL hay không:

PHP Code:
<?php
    $link = mysql_connect("localhost", "mysql_user", "mysql_password");
    if (!$link)
     {
         echo "Không thể kết nối được tới CSDL MySQL";
     }
?>
Lựa chọn CSDL

Để lựa chọn một CSDL nào đó mà người sử dụng có tên là tên_truy_cập" có quyền sử dụng, ta dùng hàm mysql_select_db:
mysql_select_db (tên_CSDL);
Hàm này thường được dùng sau khi thiết lập kết nối bằng hàm mysql_connect. Hàm này trả về true nếu thành công, false nếu thất bại.
VD:
PHP Code:
<?php
    $link = mysql_connect("localhost", "mysql_user", "mysql_password");
    if (!$link)
     {
         echo "Không thể kết nối được tới MySQL";
     }
    if (!mysql_select_db ("Forums"))
     {
         echo "Không thể lựa chọn được CSDL Forums";
     }
?>
Đóng kết nối tới CSDL:
Để đóng kết nối tới CSDL, ta dùng hàm mysql_close.
Hàm này có nhiệm vụ đóng kết nối tới CSDL có mã định danh được tạo ra bởi hàm mysql_connect().
Cú pháp:
PHP Code:
mysql_close(mã_định_danh_kết_nối).
Ví dụ:
PHP Code:
<?php
    $link = mysql_connect("localhost", "mysql_user", "mysql_password");
    if (!$link)
     {
         echo "Không thể kết nối được tới MySQL";
     }
    mysql_close($link);
?>
Share on Google Plus

About Unknown

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.
    Blogger Comment
    Facebook Comment

0 nhận xét:

Đăng nhận xét