STDIO
Tìm kiếm gần đây
    • Nội dung
    • QR Code
    • 0
    • Bình luận
    • Sao chép

    Thao Tác với MySQL Database Sử Dụng MySQLi Extension trong PHP

    Hướng dẫn cách thao tác với MySQL database sử dụng MySQLi Extension trong ngôn ngữ PHP.
    07/11/2015
    09/09/2020
    4 phút đọc
    Thao Tác với MySQL Database Sử Dụng MySQLi Extension trong PHP

    Tổng quan về MySQL

    MySQL có một số đặc điểm nổi bật sau đây:

    • MySQL là hệ cơ sở dữ liệu sử dụng cho web.
    • MySQL hoạt động trên một máy chủ (server).
    • MySQL phù hợp cho ứng dụng nhỏ và lớn.
    • MySQL sử dụng cú pháp SQL.
    • MySQL rất nhanh và dễ dàng sử dụng.
    • MySQL hỗ trợ nhiều nền tảng khác nhau như Windows, Linux, ...
    • MySQL có phiên bản hoàn toàn miễn phí và có phiên bản trả phí.

    Dữ liệu trong MySQL được lưu trữ dưới dạng bảng. Mỗi bảng là tập hợp các dữ liệu có quan hệ với nhau chứa các dòng và cột.

    Ví dụ trong công ty cần quản lý nhân viên. Tương ứng sẽ có table Employee đơn giản như sau:

    ID Name Gender Salary
    1 Nguyen Van A Male 3.000.000
    2 Nguyen Van B Male 5.000.000
    3 Nguyen Van C Male 10.000.000

    Thao tác với MySQL trong PHP

    Connect

    Với bất kì hệ quản trị cơ sở dữ liệu nào, để bắt đầu làm việc được với nó thì đầu tiên phải connect với hệ quản trị database đó.

    Trong PHP mở connect như sau:

    $conn = mysqli_connect("servername", "username", "password", "dbname");
    

    Giải thích: Hàm mysqli_connect sẽ mở một connect tới MySQL với các tham số như sau:

    • Tham số thứ 1: Servername , nếu đang test ở local truyền vào localhost.
    • Tham số thứ 2: Username của database.
    • Tham số thứ 3: Password của database.
    • Tham số thứ 4: database muốn làm việc, mọi câu truy vấn sẽ thực thi trên database này. Lưu ý, tham số này có thể chưa cần truyền nếu muốn tạo mới database. 

    Có thể chọn database muốn thao tác bằng cách sử dụng câu lệnh mysqli_select_db

    mysqli_select_db("connect", "dbname"); 
    

    Với tham số lần lượt là biến connect và tên database.

    Luôn luôn kiểm tra connect trước khi thao tác với MySQL.

    if(!$conn)
    {
    	echo "Connect Failed!". mysqli_connect_error($conn);
    }
    else
    {
    	echo "Successful";
    }
    

    Hàm mysqli_connect_error($conn) sẽ trả về lỗi nếu connect thất bại.

    Tạo connect

    $servername = 'localhost';
    $username = 'root';
    $password = '';
    		
    $conn = mysqli_connect($servername, $username, $password);
    
    if(!$conn)
    {
    	echo "Connect Failed!". mysqli_connect_error($conn);
    }
    else
    {
    	echo "Successsful";
    }
    

    Do đang test ở môi trường local nên:

    • $servername = 'localhost'
    • $username  = 'root'
    • $password = ''.

    Create database

    Sau khi connect thành công đến MySQL thì hoàn toàn có quyền thực thi các thao tác trên nó. 

    Mỗi thao tác cần tạo 1 câu truy vấn SQL mà sử dụng hàm mysqli_query để thực thì câu truy vấn đó xuống MySQL.

    Tạo 1 database có tên là QuanLyNhanVien

    $sql = "CREATE DATABASE QuanLyNhanVien";
    mysqli_query($conn, $sql);
    

    Những thao tác như insert, update, delete hoàn toàn tương tự.

    Vào phpMyAdmin sẽ thấy một database có tên QuanLySinhVien được tạo ra.

    Create table

    Tạo table có tên là Employee gồm các cột là Id tự tăng, Name, Gender, Salary

    Tạo câu truy vấn

    $dbname = 'QuanLyNhanVien';
    mysqli_select_db($conn, $dbname);
    
    $sqlTable = "CREATE TABLE Employee(
    			Id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    			Name VARCHAR(100) NOT NULL,
    			Gender VARCHAR(5) NOT NULL,
    			Salary DECIMAL NOT NULL
    			)";
    

    Thực thi câu truy vấn

    mysqli_query($conn, $sqlTable);

    Kết quả sau khi thực thi câu truy vấn

    Insert

    $sqlInsert = "INSERT INTO Employee(Name, Gender, Salary) VALUES ('Nguyen Van A', 'Male', 80000)";

    Và thực thi câu truy vấn.

    mysqli_query($conn, $sqlInsert);

    Select

    Tạo câu truy vấn select. Lấy về tất cả các trường dữ liệu và tất cả các dòng có trong table Employee.

    $sqlSelect = "SELECT * FROM Employee";

    Thực thi câu truy vấn trả về $result

    $result = mysqli_query($conn, $sqlSelect);
    

    Khác với những lần thực thi truy vấn khác thì đối với select cần trả về $result để có thể lấy ra thông tin như dưới đây:

    if(mysqli_num_rows($result) > 0)
    {
    	while ($row = mysqli_fetch_assoc($result))
    	{
    		echo $row['Id'].','.$row['Name'].','.$row['Gender'].','.$row['Salary'];
    		echo "<br />";
    	}	
    }

    Giải thích:

    Dòng 1: Hàm mysqli_num_rows($result) lấy về tổng số dòng lấy được khi thực thi câu truy vấn select. Nếu kết quả trả về > 0 sẽ lấy ra data của từng dòng.

    Dòng 3: mysqli_fetch_assoc($result) sẽ trả đổ dữ liệu của 1 dòng trong Employeevào mảng $row.

    Dòng 5: Xuất các thông tin ra màn hình.

    Update

    Viết câu truy vấn update lương cho nhân viên có Id = 1 lên 10.000.000.

    $sqlUpdate = "UPDATE Employee SET Salary= 10000000 WHERE Id = 1";
    

    Thực thi câu truy vấn update

    mysqli_query($conn, $sqlUpdate);
    

    Delete

    Câu truy vấn xóa nhân viên có id = 1 ra khỏi table Employee.

    $sqlDelte = "DELETE FROM Employee WHERE id = 1";

    Thực thi câu truy vấn để thực hiện delete.

    mysqli_query($conn, $sqlDelte);

    Close Connect

    Sau khi thao tác xong với database. Đóng connect.

    mysqli_close($conn);
    
    PHP

    Phù hợp cho bạn

    Đề xuất

    Thao Tác với XML Sử Dụng TinyXML trong C++

    Thao Tác với XML Sử Dụng TinyXML trong C++

    Hướng dẫn thao tác với XML sử dụng TinyXML trong C++.

    Modern C++Win32 API

    21/10/2015

    Stored Procedure trong MySQL

    Stored Procedure trong MySQL

    Giới thiệu, hướng dẫn tạo và sử dụng Stored Procedure trong hệ quản trị ...

    Phạm Minh Trí

    16/07/2017

    Khám phá thêm

    Thao Tác với Tài Liệu PDF Sử Dụng Thư Viện iTextSharp trong C#

    Thao Tác với Tài Liệu PDF Sử Dụng Thư Viện iTextSharp trong C#

    Giới thiệu thư viện iTextSharp, hướng dẫn cài đặt và thao tác với tài ...

    C# for AutomationKiến Thức

    16/10/2015

    Trigger trong MySQL

    Trigger trong MySQL

    Giới thiệu và hiện thực trigger trong MySQL, thực hiện các phương thức ...

    Phạm Minh Trí

    31/07/2017

    Một Số Hàm Xử Lý Đồ Hoạ trong PHP

    Một Số Hàm Xử Lý Đồ Hoạ trong PHP

    Hướng dẫn một số hàm để thao tác, xử lý đồ hoạ trong ngôn ngữ lập trình ...

    PHPCheat Sheet

    30/03/2015

    Làm Quen với SQL Server

    Làm Quen với SQL Server

    Giới thiệu SQL Server của Microsoft và hướng dẫn thao tác với dữ liệu ...

    Rye Nguyen

    30/07/2015

    Các Thao Tác Cơ Bản Quản Lý Project Với Git

    Các Thao Tác Cơ Bản Quản Lý Project Với Git

    Giới thiệu khái niệm và ưu điểm của Git. Hướng dẫn cài đặt và các thao ...

    Rye Nguyen

    05/08/2015

    Thao Tác Với Chuỗi Trong C/C++

    Thao Tác Với Chuỗi Trong C/C++

    Kiến thức cơ bản trong thao tác xử lý chuỗi trong C++.

    Modern C++C++98

    28/07/2015

    Định Dạng Ảnh Bitmap - Giới Thiệu và Các Thao Tác Cơ Bản

    Định Dạng Ảnh Bitmap - Giới Thiệu và Các Thao Tác Cơ Bản

    Trong đời thường, bạn sẽ gặp các file ảnh có định dạng .PNG, .JPG, .TGA, ...

    Phan Tấn Phúc

    13/09/2017

    Giới Thiệu Session và Cookie với PHP

    Giới Thiệu Session và Cookie với PHP

    Khái niệm, chức năng và hướng dẫn cài đặt, sử dụng session, cookie trong ...

    PHPCheat Sheet

    28/08/2015

    STDIO
    Trang chính
    Công ty TNHH STDIO

    30, Trịnh Đình Thảo, Hòa Thạnh, Tân Phú, Hồ Chí Minh
    +84 28.36205514 - +84 942.111912
    developer@stdio.vn

    383/1 Quang Trung, Phường 10, Quận Gò Vấp, Hồ Chí Minh
    Số giấy phép ĐKKD: 0311563559 do sở Kế hoạch và Đầu Tư TPHCM cấp ngày 23/02/2012

    ©STDIO, 2013 - 2020