You are on page 1of 34

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ GTVT

Chương 4: Cơ sở dữ liệu
MySQL
Giảng viên hd: Th.s. Trần Thị Xuân Hương
Đơn vị: Bộ môn HTTT
4.1. Giới thiệu về My SQL
 My SQL là một hệ quản trị CSDL, được phát triển, phân
phối và hỗ trợ bởi My SQL AB.
 Để làm việc với My SQL cần đăng ký kết nối, tạo cơ sở dữ
liệu, quản lý người dùng, phân quyền sử dụng, thiết kế đối
tượng Table của Database và xử lý dữ liệu.
 Để quản lý thao tác trên CSDL ta có thể sử dụng giao diện
đồ họa hoặc dạng Command Line
* Đặc điểm của MySQL
 MySQL cũng giống như hệ quản trị CSDL khác: Access,
SQL Server, Oracle,…

 Là phần mềm mã nguồn mở do đó có thể tải miễn phí từ


trang chủ.

 Có nhiều phiên bản cho các hệ điều hành khác nhau: phiên
bản Win32 cho các hệ điều hành dòng Windows, Linux,
Mac OS X,…
* Đặc điểm của MySQL
 MySQL là cơ sở dữ liệu tốc độ cao, ổn định và dễ sử
dụng, có tính khả chuyển, hoạt động trên nhiều hệ điều
hành cung cấp một hệ thống lớn các hàm tiện ích rất
mạnh.

 Với tốc độ và tính bảo mật cao, MySQL rất thích hợp
cho các ứng dụng có truy cập CSDL trên internet.

 MySQL server hoạt động trong các hệ thống nhúng


hoặc client/server.
* Dowload, cài đặt và cấu hình
- Có thể download miễn phí phần mềm tại địa chỉ:
http://dev.mysql.com/downloads.
-Sau đó tiến hành các bước cài đặt

-Ngoài ra có thể sử dụng phpMyAdmin được tích hợp


trong XAMPP, WAMP.
4.2. Tạo CSDL và người dùng
4.2.1. Các kiểu dữ liệu của MySQL
- Kiểu số:
- Kiểu văn bản
- Kiểu ngày tháng
4.2.2. Thiết lập người dùng
- Khởi động XAMPP/ chọn Admin
- Nhấn vào tab Database
 Database name: gõ vào tên của CSDL
 Collation: Chọn dạng ngôn ngữ hiển thị, có thể chọn
uttf8_general_ci
- Nhấn Create
Quản lý người dùng
- Để đăng nhập vào MySQL ta có thể sử dụng user
là root và pass là rỗng.
- Ngoài tài khoản này ra ta có thể tạo thêm các tài
khoản cho người dùng với các user và pass khác
nhau.
Tạo user kết nối database
- Nhấn chuột vào tên database cần tạo user (ví dụ: tintuc) từ danh sách
database bên trái
- Chọn tab Privilges để tạo user
- Kích chọn Add user account để bắt đầu tạo
- Tại màn hình user:
1) User name: đặt tên user
2) Hostname: thông thường chọn local
3) Password: gõ mật khẩu
4) Re_type: gõ lại mật khẩu
5) Chọn Grant all privileges on database ….
- Chọn Check all để cấp quyền cho user vừa tạo hoặc chọn theo
4.2.3. Tạo bảng trong MySQL
- Tạo bằng lệnh:

- Ví dụ: Tạo bảng sau:

SINHVIEN(hodem varchar(100), ten varchar(50),


ngaysinh date, diachi varchar(500), dienthoai
varchar(10))
Sửa bảng
- Cú pháp:
ALTER TABLE <Table_Name>
ADD <Column_Name> Data_Type [NOT NULL DEFAULT value];
CHANGE COLUMN; <Column_Name> <New_Column_Name>
Data_Type;
MODIFY COLUMN <Column_Name> New_Datatype;
RENAME TO <New_Table_Name>;
DROP <Column_Name>;
Ví dụ
SINHVIEN(hodem varchar(100), ten varchar(50),
ngaysinh date, diachi varchar(500), dienthoai
varchar(10))

1. Thêm cột mã sinh viên làm khóa chính trong bảng sinh
viên và cột email, ghichu thuộc kiểu varchar
2. Đổi cột ngày sinh sang kiểu datetime
3. Sửa cột email thành dcmail
4. Xóa cột ghichu
Xóa bảng
- Cú pháp: DROP TABLE <Table_Name>;
* Insert dữ liệu vào bảng
- Cú pháp:
INSERT INTO <Table_Name>
VALUES(Value_1, Value_2,…,Value_n)

INSERT INTO <Table_Name>(Column_Name_1,...,


Column_Name_n)
VALUES(Value_1,…,Value_n)
Ví dụ
* Cập nhật dữ liệu
- Cú pháp:

- Ví dụ:
* Xóa dữ liệu
- Cú pháp:
* Truy xuất dữ liệu
- Cú pháp:
Ví dụ
Mệnh đề với GROUP BY
- Dùng để nhóm dữ liệu. Thường dung khi có tính
toán dữ liệu theo nhóm. Các hàm tính toán theo
nhóm: Sum, Max, Min, Count, AVG,…
- Cú pháp:
Mệnh đề với HAVING
- Điều kiện lọc sau khi gom nhóm
- Cú pháp:
Truy vấn con
- Truy vấn con với mệnh đề SELECT:

- Truy vấn con với mệnh đề FROM


Truy vấn con
- Truy vấn con với mệnh đề WHERE:

- Truy vấn con với mệnh đề HAVING


* Các hàm trong MySQL
Tên hàm Mô tả

Sum Tính tổng


Max Tìm giá trị lớn nhất
Min Tìm giá trị nhỏ nhất
Avg Tính trung bình
Curdate() Trả về date hiện tại
Curtime() Trả về giờ hiện tại
Now() Trả về ngày, giờ hiện tại
Day Trả về ngày
Month Trả về tháng
Year Trả về năm
* Sao lưu dữ liệu (Export)
- Chọn Tab Export của CSDL cần Export
- Chọn Quick: nếu muốn export mặc định được cài
đặt trong phpMyAdmin.
- Chọn Custom: sẽ hiển thị ra tất cả các option cho
chúng ta lựa chọn và thiết lập theo ý ta khi export.
- Format: Chọn SQL để có thể phục hồi (CSV:
thường được sử dụng xuất kết quả table).
- Nhấn Go để Export về máy.
3.4.2.9. Phục hồi dữ liệu (Import)
- Tạo CSDL mới
- Mở CSDL đó ra, chọn tab IMPORT
- Nhấn vào brower để chọn file cần Import
- Nhấn Go để Import.
Bài tập: Tạo CSDL sau
Dữ liệu:
Dữ liệu: bảng đăng ký cc
Truy vấn
1. Liệt kê những dòng xe có số chỗ ngồi trên 5 chỗ
2. Liệt kê thông tin của các nhà cung cấp đã từng đăng ký cung cấp
những dòng xe thuộc hãng xe “Toyota” với mức phí có đơn giá là
15.000 VNĐ/km hoặc những dòng xe thuộc hãng xe “KIA” với mức
phí có đơn giá là 15.000 VNĐ/km
3. Liệt kê thông tin toàn bộ nhà cung cấp được sắp xếp tăng dần theo
tên nhà cung cấp và giảm dần theo mã số thuế
4. Đếm số lần đăng ký cung cấp phương tiện tương ứng cho từng nhà
cung cấp với yêu cầu chỉ đếm cho những nhà cung cấp thực hiện
đăng ký cung cấp có ngày bắt đầu cung cấp là “20/11/2015”
5. Liệt kê tên của toàn bộ các hãng xe có trong cơ sở dữ liệu với yêu
cầu mỗi hãng xe chỉ được liệt kê một lần
Truy vấn
6. Liệt kê MaDKCC, MaNhaCC, TenNhaCC, DiaChi,
MaSoThue, TenLoaiDV, DonGia, HangXe, NgayBatDauCC,
NgayKetThucCC của tất cả các lần đăng ký cung cấp phương
tiện với yêu cầu những nhà cung cấp nào chưa từng thực hiện
đăng ký cung cấp phương tiện thì cũng liệt kê thông tin những
nhà cung cấp đó ra
7. Liệt kê thông tin của các nhà cung cấp đã từng đăng ký cung
cấp phương tiện thuộc dòng xe “Hiace” hoặc từng đăng ký
cung cấp phương tiện thuộc dòng xe “Cerato”
8. Liệt kê thông tin của các nhà cung cấp chưa từng thực hiện
đăng ký cung cấp phương tiện lần nào cả.

You might also like