Tài liệu Phần mềm nguồn mở - Chương 3: Một số công cụ PM nguồn mở (P4) - Võ Đức Quang: Phần mềm Nguồn Mở 
(Open-Source Software) 
Võ Đức Quang 
Khoa CNTT-Đại học Vinh 
Chương 3: 
Một số phần mềm nguồn mở 
Chương 3: Một số công cụ PM 
nguồn mở 
Phần mềm VirtualBox 
Hệ điều hành Linux 
WebServer cho PHP&MySQL 
o WAMP 
o XAMPP 
Hệ quản trị CSDL MySQL 
Ngôn ngữ lập trình Web PHP 
Thao tác với MySQL 
Tạo, xóa CSDL 
Table và thuộc tính 
Thêm, sửa, xóa dữ liệu 
Truy vấn CSDL 
Tạo CSDL 
Tạo CSDL 
Tạo CSDL 
Xóa CSDL 
SQL command: 
o DROP DATABASE [Database_name] 
GUI 
Bảng và thuộc tính 
Bảng và thuộc tính 
Bảng thuộc tính 
Quá trình thiết kế CSDL 
Tạo bảng 
Bảng dữ liệu thiết kế 
Tạo bảng 
CREATE TABLE table_name 
( column_names datatypes modifiers); 
o Ví dụ: 
 CREATE TABLE Customers ( 
Customer_ID INT NOT NULL PRIMARY 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, 
Gender ENU...
                
              
                                            
                                
            
 
            
                 37 trang
37 trang | 
Chia sẻ: putihuynh11 | Lượt xem: 770 | Lượt tải: 1 
              
            Bạn đang xem trước 20 trang mẫu tài liệu Phần mềm nguồn mở - Chương 3: Một số công cụ PM nguồn mở (P4) - Võ Đức Quang, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Phần mềm Nguồn Mở 
(Open-Source Software) 
Võ Đức Quang 
Khoa CNTT-Đại học Vinh 
Chương 3: 
Một số phần mềm nguồn mở 
Chương 3: Một số công cụ PM 
nguồn mở 
Phần mềm VirtualBox 
Hệ điều hành Linux 
WebServer cho PHP&MySQL 
o WAMP 
o XAMPP 
Hệ quản trị CSDL MySQL 
Ngôn ngữ lập trình Web PHP 
Thao tác với MySQL 
Tạo, xóa CSDL 
Table và thuộc tính 
Thêm, sửa, xóa dữ liệu 
Truy vấn CSDL 
Tạo CSDL 
Tạo CSDL 
Tạo CSDL 
Xóa CSDL 
SQL command: 
o DROP DATABASE [Database_name] 
GUI 
Bảng và thuộc tính 
Bảng và thuộc tính 
Bảng thuộc tính 
Quá trình thiết kế CSDL 
Tạo bảng 
Bảng dữ liệu thiết kế 
Tạo bảng 
CREATE TABLE table_name 
( column_names datatypes modifiers); 
o Ví dụ: 
 CREATE TABLE Customers ( 
Customer_ID INT NOT NULL PRIMARY 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, 
Gender ENUM('M', 'F') DEFAULT 'F', 
Favorite_Activity ENUM('Programming','Eating', 
'Biking', 'Running', 'None') DEFAULT 'None'); 
Tạo bảng 
Các kiểu dữ liệu trong MySQL 
Kiểu số 
Các kiểu dữ liệu trong MySQL 
Kiểu chuỗi 
Các kiểu dữ liệu trong MySQL 
Kiểu ngày giờ 
Các kiểu dữ liệu trong MySQL 
 Các kiểu hỗn hợp (Miscellaneous) 
o 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 đó. 
 Ví dụ: 
 CREATE TABLE Test( 
 iReturn ENUM('Y','N') DEFAULT 'N', 
 Size ENUM('S','M','L','XL','XXL'), 
 Color ENUM('Black','Red','White') 
 ) 
Các kiểu dữ liệu trong MySQL 
 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 ', ‘ 
 Ví dụ: 
CREATE Table Test( Advertiser 
SET('WebPage','Television','Newspaper')) 
Từ khóa khai báo cho dữ liệu 
Thay đổi cấu trúc bảng 
 Thay đổi tên cột: 
Alter table table_name 
CHANGE old_col_name new_col_name old_datatype; 
o Ví dụ: 
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; 
o Ví dụ: 
ALTER TABLE Customers 
CHANGE Last_Name Last_Name VARCHAR(50); 
Thay đổi cấu trúc bảng 
Đổi tên bảng 
Alter table table_name RENAME new_table_name; 
Ví dụ: 
ALTER TABLE Customers 
RENAME Customer_Table; 
 Thêm cột vào bảng 
Alter table table_name ADD column_name datatype; 
Ví dụ: 
ALTER TABLE Customer 
ADD Last_Name VARCHAR(30); 
 Xoá một cột 
Alter table table_name DROP column_name; 
Ví dụ: 
 ALTER TABLE Customers 
 DROP Last_Name; 
 Thêm khoá chính 
Alter table table_name ADD Primary Key col_names); 
Ví dụ: 
 ALTER TABLE Customers 
 ADD PRIMARY KEY (Customer_ID); 
 Xoá khoá chính 
Alter table table_name DROP Primary Key; 
Thay đổi cấu trúc bảng 
Chèn, sửa, xóa dữ liệu 
Chèn dữ liệu 
o Insert into table_name (column_names) 
values (column_values); 
Cập nhật dữ liệu 
o Update table_name set filename=newvalue 
where condition 
Xóa dữ liệu 
o Delete From table_name Where condition 
Truy Vấn Dữ Liệu 
Cú pháp truy vấn 
Các hàm sử dụng trong truy vấn 
o Hàm thời gian 
o Hàm xử lý chuỗi 
o Hàm kiểm tra điều kiện 
o Hàm toán học 
Truy Vấn Dữ Liệu 
Các từ khóa truy vấn SQL 
Truy Vấn Dữ Liệu 
Cú pháp 
SELECT *|column1, column2 
FROM table1, table2 
WHERE [conditions] 
GROUP BY column1, column2 
HAVING [conditions] 
ORDER BY column1, column2 
Các hàm hỗ trợ trong truy vấn 
Hàm toán học 
oMod (số bị chia, số chia) : lấy phần dư của phép 
chia. 
Ví dụ: 
 Select Mod(ThanhTien,2) 
 From Orders as HoaDon; 
o Round(số, vị trí làm tròn) : hàm làm tròn số. 
Ví dụ: 
 Select Round(ThanhTien,1) 
 From Orders as HoaDon; 
Các hàm hỗ trợ trong truy vấn 
Hàm điều kiện 
o IF(logic_expression,true_result,false_result) : kiểm tra điều 
kiện đúng/sai. 
o Ví dụ: 
 Select If(SoLuong>20,5%,2%) as GiamGia From Orders 
o IFNULL(result1,result2) : kết quả result1 nếu không null 
ngược lại sẽ trả về result2. 
o Ví dụ: 
 Select IfNull(10/0,1) as Exam 
o CASE value WHEN expression THEN result1 ELSE result2 : 
trả về result1 khi expression đúng, ngược lại trả về result2 
o Ví dụ: 
 Select CASE 1 WHEN Col1="Y" THEN 1 WHEN Col2="Y" 
 THEN 2 WHEN Col3="Y" THEN 3 ELSE "NONE"; 
Các hàm hỗ trợ trong truy vấn 
 Hàm chuỗi 
o LTRIM, RTRIM, TRIM : cắt bỏ những khoảng trắng thừa. 
 Select LTRIM(" ABC") → "ABC" 
 Select TRIM(" ABC ") → "ABC" 
o SUBSTRING(chuỗi, vị trí bắt đầu) : lấy một chuỗi con của chuỗi từ vị 
trí bắt đầu 
 Select Substring("Hello World",7) → "World" 
o 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. 
 Select Locate("lo","Hello World",1) → 4 
o REPLACE(chuỗi 1, chuỗi 2, chuỗi 3) : thay thế chuỗi 2 bằng chuỗi 3 
trong chuỗi 1. 
 select Replace("Filename.xxx","xxx","123") → 
"Filename.123" 
o UCASE, LCASE : chuyển chữ thường thành in hoa và ngược lại. 
o REVERSE : đảo ngược chuỗi. 
Các hàm hỗ trợ trong truy vấn 
 Hàm thời gian 
o MONTHNAME(date) : trả về tên tháng của date. 
 Select monthname(20000105) → January 
o DAYOFYEAR(date) : trả về số ngày tính từ đầu năm đến date. 
 Select dayofyear(20000201) → 32 
 Select dayofyear("2000/02/01") → 32 
o DAYOFMONTH(date) : trả về số ngày tính từ đầu tháng đến date 
 Select dayofyear(20000201) → 1 
 Select dayofyear("2000/02/01") → 1 
 Select dayofyear("00-02-01") → 1 
o DAYOFWEEK(date) : trả về số ngày tính từ đầu tuần đến date. 
 Select dayofyear(20000201) → 3 
 Select dayofyear("0-2-1") → 3 
o YEAR(date) : trả về năm của date. 
o QUARTER(date) : trả về quý của date 
Các hàm hỗ trợ trong truy vấn 
 Hàm thời gian 
o MONTH(date): trả về tháng của date. 
o DAY(date): trả về ngày của date. 
o WEEK(date): trả về số tuần của date tính từ ngày đầu tiên của năm. 
o YEARWEEK(date): trả về số tuần của date tính từ ngày đầu tiên của 
năm 
o NOW() , SYSDATE(), CURRENT_TIMESTAMP : trả về ngày giờ hệ thống. 
 Select NOW() → 2009-10-28 18:05:11 
 Select NOW()+0 → 20091028180511 
o CURDATE() , CURRENT_DATE : trả về ngày của hệ thống. 
o CURTIME() , CURRENT_TIME : trả về ngày của hệ thống. 
o HOUR(time) : trả về giờ của time. 
o MINUTE(time) : trả về phút của time. 
o SECOND(time) : trả về giây của time. 
o DATE_FORMAT(date,format) : định dạng date theo format. 
o TIME_FORMAT(time,format) : định dạng date theo format. 
Các hàm hỗ trợ trong truy vấn 
Hàm thời gian 
o TO_DAYS(date) : trả về số ngày từ ngày đầu tiên sau 
Công Nguyên đến date. 
 TO_DAYS("2000-01-01") → 730485 
o FROM_DAYS(number) : trả về ngày sau Công Nguyên 
number ngày. 
 FROM_DAYS(1000000) → 2737-11-28 
o TIME_TO_SEC(time) : trả về thời gian tính bằng giây từ 
0:00:00 đến time. 
o 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. 
Các hàm hỗ trợ trong truy vấn 
Hàm thời gian 
o ADDDATE(date, INTERVAL expression type) : Thêm 
một khoảng thời gian vào date. 
o SUBDATE(date, INTERVAL expression type) : bớt đi 
một khoảng thời gian trong date. 
 ADDDATE("1980-07-04",INTERVAL 15 YEAR) 
→ 1995-07-04 
 SUBDATE(20001201,INTERVAL "10 4" 
YEAR_MONTH) 
→ 1990-08-01 
Các hàm hỗ trợ trong truy vấn 
MySQL 
Một số vấn đề khác 
o Triggers 
o Tracking 
o Transaction 
o Chỉ mục (index) 
o Bảng tạm 
o SQL injection 
o  
            Các file đính kèm theo tài liệu này:
 phan_mem_nguon_mo_chuong3_04_015_1997530.pdf phan_mem_nguon_mo_chuong3_04_015_1997530.pdf