Các hệ thống mã nguồn mở - Chương 3: Hệ quản trị cơ sở dữ liệu MySQL

Nội Dung

1. Tổng quan về MySQL

2. Khởi động và tắt dịch vụ MySQL

3. Truy cập MySQL

1. MySQL Console

2. PhpMyAdmin

4. Thay đổi password cho root (tài khoản mặc định)

5. Các thao tác trên CSDL

6. Định nghĩa bảng

7. Truy vấn dữ liệu

8. Import và Export dữ liệu

9. Công cụ đồ họa MySQL GUI TOOLS

pdf40 trang | Chuyên mục: MySQL | Chia sẻ: dkS00TYs | Lượt xem: 2146 | Lượt tải: 5download
Tóm tắt nội dung Các hệ thống mã nguồn mở - Chương 3: Hệ quản trị cơ sở dữ liệu MySQL, để xem tài liệu hoàn chỉnh bạn click vào nút "TẢI VỀ" ở trên
Mã Nguồn Mở 13
Table (tt)
• Các kiểu dữ liệu trong MySQL
• Kiểu ngày giờ (lưu ý các dữ liệu ngày khi Insert vào MySQL)
Môn Các Hệ Thống Mã Nguồn Mở 14
Table (tt)
• Các kiểu dữ liệu trong MySQL
• Hỗn hợp (Miscellaneous)
Môn Các Hệ Thống Mã Nguồn Mở 15
Enum : kiểu dữ liệu liệt kê, cho phép định nghĩa trước các giá trị cho một 
cột, cột sẽ chỉ lưu trữ một trong các giá trị định sẵn đó.
Vd : 
CREATE TABLE Test(
Return ENUM('Y','N') DEFAULT 'N',
Size ENUM('S','M','L','XL','XXL'),
Color ENUM('Black','Red','White')
)
Set : kiểu dữ liệu liệt kê, tương tự enum nhưng cho phép cột lưu trữ nhiều 
giá trị trong các giá trị định sẵn, mỗi giá trị cách nhau bởi dấu ', '
Vd :
CREATE Table Test(
Advertiser SET('Web Page','Television','Newspaper')
)
Table (tt)
• Các từ khóa khai báo cột
Môn Các Hệ Thống Mã Nguồn Mở 16
Table (tt)
• Tạo bảng
Môn Các Hệ Thống Mã Nguồn Mở 17
Create table table_name ( column_names datatypes modifiers)
Vd : Tạo bảng Customers (khách hàng)
CREATE TABLE Customers (
Customer_ID INT NOT NULLPRIMARY KEY AUTO_INCREMENT,
First_Name VARCHAR(20)NOT NULL,
Last_Name VARCHAR(30) NOT NULL,
Address VARCHAR(50), City VARCHAR(20),
State VARCHAR(2), Zip VARCHAR(20),
E_Mail VARCHAR(20), Age INT, Race VARCHAR(20),
Gender ENUM('M', 'F') DEFAULT 'F',
Favorite_Activity ENUM('Programming', 'Eating', 'Biking', 
'Running', 'None') DEFAULT 'None',
Occupation VARCHAR(30), Smoker CHAR(0)
);
Table (tt)
• Thay đổi cấu trúc bảng
Môn Các Hệ Thống Mã Nguồn Mở 18
• Thay đổi tên cột
Alter table table_name CHANGE old_column_name 
new_column_name old_datatype;
Vd : ALTER TABLE Customers
CHANGE First_Name FirstName VARCHAR(20);
• Thay đổi kiểu dữ liệu
Alter table table_name CHANGE column_name column_name 
new_datatype;
Vd : ALTER TABLE Customers
CHANGE Last_Name Last_Name VARCHAR(50);
• Đổi tên bảng
Alter table table_name RENAME new_table_name;
Vd : ALTER TABLE Customers RENAME Customer_Table;
• Thêm cột vào bảng
Alter table table_name ADD column_name datatype;
Vd : ALTER TABLE Customer ADD Last_Name VARCHAR(30);
Table (tt)
• Thay đổi cấu trúc bảng
Môn Các Hệ Thống Mã Nguồn Mở 19
• Xoá một cột
Alter table table_name DROP column_name;
Vd : ALTER TABLE Customers DROP Last_Name;
• Thêm khoá chính
Alter table table_name ADD Primary Key (column_names);
Vd : ALTER TABLE Customers ADD PRIMARY KEY (Customer_ID);
• Xoá khoá chính
Alter table table_name DROP Primary Key;
Table (tt)
• Chèn dữ liệu
• Insert into table_name (column_names) values
(column_values);
• Xóa dữ liệu
• Delete From table_name Where condition
• Cập nhật dữ liệu
• Update table_name set filename=newvalue where
condition
Môn Các Hệ Thống Mã Nguồn Mở 20
Import & Export dữ liệu
• Import từ file text
• Mysqlimport.exe database_name table_name.txt
• Vd : mysqlimport QLBanHang Customer.txt
• Lưu ý :
• Mỗi dòng dữ liệu được trình bày trên 1 dòng.
• Giá trị text phải được đóng bằng dấu nháy đơn (') hoặc nháy kép 
(").
• Các giá trị cách bởi dấu phẩy (,).
• Các giá trị phải được sắp theo thứ tự tương ứng
• Vd : khi import vào bảng có các cột sau Customer_ID int, 
Last_Name varchar(25), First_Name varchar(15), dữ liệu file text 
phải theo mẫu sau :
1, "Nguyen Minh","Thanh"
Môn Các Hệ Thống Mã Nguồn Mở 21
Import & Export dữ liệu
• Import từ file text
Môn Các Hệ Thống Mã Nguồn Mở 22
Import & Export dữ liệu
• Import từ file sql
Môn Các Hệ Thống Mã Nguồn Mở 23
Để thực thi file sql ta sẽ sử dụng lệnh sau :
Load Data Infile filename.sql Into Table table_name;
Vd : LOAD DATA INFILE "C:\MyDocs\data.sql" INTO TABLE Orders;
Import & Export dữ liệu
• Import từ file sql
Môn Các Hệ Thống Mã Nguồn Mở 24
Nếu muốn chỉ định file sql nằm trên máy cục bộ, cá nhân :
Load Data Local Infile filename.sql Into Table table_name;
Để thay thế các dòng giá trị trùng nhau :
Load Data Local Infile filename.sql Replace Into Table table_name;
Tuy nhiên, ta cũng có thể sử dụng phương thức Load Data này cho các file text
LOAD DATA INFILE "Orders.txt" REPLACE INTO TABLE Orders FIELDS 
TERMINATED BY ',' ENCLOSED BY '"'; 
Import & Export dữ liệu
• Export dữ liệu : Chương trình mysqldump
Môn Các Hệ Thống Mã Nguồn Mở 25
Để export cấu trúc định nghĩa và cả dữ liệu trong bảng ra file .txt ta dùng chương 
trình mysqldump trong thư mục Bin của MySQL. File kết xuất sẽ nằm trên 
server.
Mysqldump.exe –u username –p database_name table_name > filename.txt
vd : mysqldump –u root –p qlBanHang Customers > C:\Customer.txt
Sau khi gõ lệnh, ta sẽ nhập password của tài khoản sử dụng. 
Nếu không muốn tạo từng file .txt cho từng bảng, mà muốn làm cho cả CSDL, ta 
sử dụng lệnh
Mysqldump.exe –u username –p database_name > filename.txt
Truy Vấn Dữ Liệu
Môn Các Hệ Thống Mã Nguồn Mở 26
Truy Vấn Dữ Liệu
• Các hàm sử dụng trong truy vấn
Môn Các Hệ Thống Mã Nguồn Mở 27
Hàm toán học
Mod (số bị chia, số chia) : lấy phần dư của phép chia.
Vd : Select Mod(ThanhTien,2) From Orders as HoaDon;
Round(số, vị trí làm tròn) : hàm làm tròn số.
Vd : Select Round(ThanhTien,1) From Orders as HoaDon;
Truy Vấn Dữ Liệu
• Các hàm sử dụng trong truy vấn
Môn Các Hệ Thống Mã Nguồn Mở 28
Hàm điều kiện
IF(logic_expression,true_result,false_result) : hàm kiểm tra điều kiện đúng/sai.
Vd : Select If(SoLuong>20,5%,2%) as GiamGia From Orders;
IFNULL(result_1,result_2) : hàm trả về kết quả result_1 nếu nó không null ngược 
lại sẽ trả về result_2.
Vd : Select IfNull(10/0,1) as Exam
CASE value WHEN expression THEN result_1 ELSE result_2 : hàm trả về 
result_1 khi expression đúng, ngược lại trả về result_2.
Vd : Select CASE 1 WHEN Column1="Y" THEN 1 WHEN Column2="Y" THEN 2 
WHEN Column3="Y" THEN 3 ELSE "NONE";
Truy Vấn Dữ Liệu
• Các hàm sử dụng trong truy vấn
Môn Các Hệ Thống Mã Nguồn Mở 29
Hàm chuỗi
LTRIM, RTRIM, TRIM : cắt bỏ những khoảng trắng thừa.
Vd : Select LTRIM(" ABC") → "ABC"
Vd : Select RTRIM("ABC ") → "ABC"
Vd : Select TRIM(" ABC ") → "ABC"
SUBSTRING(chuỗi, vị trí bắt đầu) : lấy một chuỗi con từ vị trí bắt đầu
Vd : Select Substring("Hello World",7) → "World"
LOCATE(chuỗi 1, chuỗi 2, vị trí bắt đầu) : xác định vị trí chuỗi 1 trong chuỗi 2 từ vị 
trí bắt đầu.
Vd : Select Locate("lo","Hello World",1) → 4
REPLACE(chuỗi 1, chuỗi 2, chuỗi 3) : thay thế chuỗi 2 bằng chuỗi 3 trong chuỗi 1.
Vd : select Replace("Filename.xxx","xxx","123") → "Filename.123"
UCASE, LCASE : chuyển chữ thường thành in hoa và ngược lại.
REVERSE : đảo ngược chuỗi.
Truy Vấn Dữ Liệu
• Các hàm sử dụng trong truy vấn
Môn Các Hệ Thống Mã Nguồn Mở 30
Hàm thời gian
MONTHNAME(date) : trả về tên tháng của date.
Vd : Select monthname(20000105) → January
DAYOFYEAR(date) : trả về số ngày tính từ đầu năm đến date.
Vd : Select dayofyear(20000201) → 32
Vd : Select dayofyear("2000/02/01") → 32
DAYOFMONTH(date) : trả về số ngày tính từ đầu tháng đến date.
Vd : Select dayofyear(20000201) → 1
Vd : Select dayofyear("2000/02/01") → 1
Vd : Select dayofyear("00-02-01") → 1
DAYOFWEEK(date) : trả về số ngày tính từ đầu tuần đến date.
Vd : Select dayofyear(20000201) → 3
Vd : Select dayofyear("0-2-1") → 3
YEAR(date) : trả về năm của date.
QUARTER(date) : trả về quý của date.
Truy Vấn Dữ Liệu
• Các hàm sử dụng trong truy vấn
Môn Các Hệ Thống Mã Nguồn Mở 31
Hàm thời gian
MONTH(date) : trả về tháng của date.
DAY(date) : trả về ngày của date.
WEEK(date) : trả về số tuần của date tính từ ngày đầu tiên của năm.
YEARWEEK(date) : trả về số tuần của date tính từ ngày đầu tiên của năm.
NOW() , SYSDATE(), CURRENT_TIMESTAMP : trả về ngày giờ hệ thống.
Vd : Select NOW() → 2009-10-28 18:05:11
Vd : Select NOW()+0 → 20091028180511
CURDATE() , CURRENT_DATE : trả về ngày của hệ thống.
CURTIME() , CURRENT_TIME : trả về ngày của hệ thống.
HOUR(time) : trả về giờ của time.
MINUTE(time) : trả về phút của time.
SECOND(time) : trả về giây của time.
DATE_FORMAT(date,format) : định dạng date theo format.
TIME_FORMAT(time,format) : định dạng date theo format.
Truy Vấn Dữ Liệu
• Các tham số thời gian
Môn Các Hệ Thống Mã Nguồn Mở 32
Truy Vấn Dữ Liệu
• Các hàm sử dụng trong truy vấn
Môn Các Hệ Thống Mã Nguồn Mở 33
Hàm thời gian
TO_DAYS(date) : trả về số ngày từ ngày đầu tiên sau Công Nguyên đến date.
Vd : TO_DAYS("2000-01-01") → 730485
FROM_DAYS(number) : trả về ngày sau Công Nguyên number ngày.
Vd : FROM_DAYS(1000000) → 2737-11-28
TIME_TO_SEC(time) : trả về thời gian tính bằng giây từ 0:00:00 đến time.
SEC_TO_TIME(seconds) : trả về thời điểm sau 0:00:00 một khoảng thời gian là 
seconds giây.
DATE_ADD(date, INTERVAL expression type) : cộng thêm một khoảng thời gian vào 
date.
Truy Vấn Dữ Liệu
• Các hàm sử dụng trong truy vấn
Môn Các Hệ Thống Mã Nguồn Mở 34
Hàm thời gian
ADDDATE(date, INTERVAL expression type) : cộng thêm một khoảng thời gian vào 
date.
DATE_SUB(date, INTERVAL expression type) : bớt đi một khoảng thời gian trong 
date.
SUBDATE(date, INTERVAL expression type) : bớt đi một khoảng thời gian trong 
date.
Vd: ADDDATE("1980-07-04",INTERVAL 15 YEAR) → 1995-07-04
Vd: SUBDATE(20001201, INTERVAL "10 4" YEAR_MONTH)→ 1990-08-01
Truy Vấn Dữ Liệu
Môn Các Hệ Thống Mã Nguồn Mở 35
Công cụ đồ họa MySQL GUI TOOLS
Môn Các Hệ Thống Mã Nguồn Mở 36
• MySQL GUI Tool là bộ công cụ với giao diện đồ hoạ thân thiện, giúp 
người sử dễ dàng thao tác trên MySQL hơn so với thao tác bằng giao 
diện câu lệnh.
• Có thể tải MySQL GUI Tools trên trang web chính thức của MySQL 
( Bộ công cụ bao 
gồm 3 công cụ chính :
• MySQL Administrator : công cụ quản trị MySQL Server.
• MySQL Query Browser : công cụ thực hiện các câu truy vấn trực 
quan.
• MySQL Migration Toolkit : công cụ cho phép chuyển đổi giữa các 
hệ CSDL khác nhau.
Công cụ đồ họa MySQL GUI TOOLS
Môn Các Hệ Thống Mã Nguồn Mở 37
• MySQL Administrator
Công cụ đồ họa MySQL GUI TOOLS
Môn Các Hệ Thống Mã Nguồn Mở 38
• MySQL Administrator
Công cụ đồ họa MySQL GUI TOOLS
Môn Các Hệ Thống Mã Nguồn Mở 39
• MySQL Query Browser
Hỏi Đáp ?
Môn Các Hệ Thống Mã Nguồn Mở 40

File đính kèm:

  • pdfCác hệ thống mã nguồn mở - Chương 3_Hệ quản trị cơ sở dữ liệu MySQL.pdf
Tài liệu liên quan