Bài giảng phát triển phần mềm mã nguồn mở chương 3 hệ quản trị cơ sở dữ liệu MySQL

46 424 1
Bài giảng phát triển phần mềm mã nguồn mở   chương 3 hệ quản trị cơ sở dữ liệu MySQL

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƢỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN PHÁT TRIỂN PHẦN MỀM MÃ NGUỒN MỞ Chƣơng 3: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL Thời gian: tiết Giảng viên: ThS Dƣơng Thành Phết Email: phetcm@gmail.com Website: http://www.thayphet.net Tel: 0918158670 – facebook com/DuongThanhPhet http://www.thayphet.net NỘI DUNG Tổng quan MySQL Khởi động tắt dịch vụ MySQL Truy cập MySQL Các thao tác CSDL Định nghĩa bảng Truy vấn liệu Import Export liệu Công cụ đồ họa MySQL GUI TOOLS http://www.thayphet.net TỔNG QUAN VỀ MYSQL  Là hệ QT CSDL đa luồng, mã nguồn mở  Chứ SQL Server, Oracle…Chuyên dụng cho mức độ  Phát triển Cty tư vấn phát triển ứng dụng Thụy Điển TcX sau đổi tên thành MySQL AB Hiện MySQL Oracle mua  MySQL phát triển phổ biến cho HĐH Linux, nhiên nay, sử dụng HĐH Windows  MySQL có nhiều phiên bản: Cá nhân dùng miễn phí Tuy nhiên, doanh nghiệp cần phải trả phí http://www.thayphet.net TỔNG QUAN VỀ MYSQL Đặc điểm MySQL  Tốc độ truy xuất nhanh, ổn định, dễ sử dụng  Có tính khả chuyển, hoạt động nhiều tảng HĐH  Cung cấp hệ thống thư viện hàm lớn  Khả bảo mật tốt  Hoạt động hệ client/server hệ thống nhúng  Thích hợp cho hệ thống Internet (Yahoo!, Alcatel, Google, Nokia, YouTube…)  Được hỗ trợ nhiều ngôn ngữ lập lập trình http://www.thayphet.net TỔNG QUAN VỀ MYSQL Lịch sử phát triển MySQL  1994: Được phát triển Michael Widenius David Axmark thuộc công ty TcX  05-1995: Phiên  01-1998: Phiên Windows 95, NT  01-2001: Phiên  03-2003: Phiên  02-2008: Sun MicroSystem mua lại MySQL AB  11-2008: Ver 5.0, 5.1 phát hành, chứa nhiều lỗi hoạt động không hiệu  01-2010: Oracle mua lại Sun MicroSystem phát hành Ver 5.4, 5.5 hoạt động tốt http://www.thayphet.net KHỞI ĐỘNG VÀ TẮT DỊCH VỤ MYSQL  Khi cài đặt WAMP Server, lần khởi động WAMP dịch vụ MySQL tự động kích hoạt  Để tắt mở dịch vụ, ta sử dụng biểu tượng WAMP Server khay hệ thống, chọn mục MySQL http://www.thayphet.net TRUY CẬP MYSQL  Tài khoản mặc định MySQL Server  User : root  Password : http://www.thayphet.net TRUY CẬP MYSQL  Đăng nhập PhpMyAdmin  Vào biểu tương WAMP Server, click PhpMyAdmin  Wamp đăng nhập vào MySQL tài khoản root  Nếu thay đổi password chương trình không đăng nhập được, cần chỉnh lại pass file c:\wamp\apps\phpmyadmin3.5.1\config.inc.php Mục : $cfg['Servers'][$i]['password'] = ‘…'; http://www.thayphet.net TRUY CẬP MYSQL  Đăng nhập MySQL Console  Tại icon WAMP Server, chọn mục MySQL, chọn MySQL Console http://www.thayphet.net CÁC THAO TAC TRÊN CSDL  Thay đổi mật set password for acount_name@server_name = password("new_password");  Xem tình trạng Server status;  Xem sở liệu show databases; 10 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng truy vấn Hàm chuỗi LOCATE(chuỗi 1, chuỗi 2, vị trí bắt đầu)  Xác định vị trí chuỗi chuỗi 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 chuỗi chuỗi chuỗi Vd : select Replace("Filename.xxx","xxx","123") → "Filename.123" UCASE, LCASE  Chuyển chữ thường thành in hoa ngược lại REVERSE  Đảo ngược chuỗi 32 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng truy vấn Hàm thời gian MONTHNAME(date)  Trả tên tháng date Vd : Select monthname(20000105) → January DAYOFYEAR(date)  Trả 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ả số ngày tính từ đầu tháng đến date Vd : Select dayofyear(20000201) → Vd : Select dayofyear("2000/02/01") → Vd : Select dayofyear("00-02-01") → 33 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng truy vấn Hàm thời gian DAYOFWEEK(date)  Trả số ngày tính từ đầu tuần đến date Vd : Select dayofyear(20000201) → Vd : Select dayofyear("0-2-1") → YEAR(date) Trả năm date QUARTER(date)  Trả quý date 34 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng truy vấn Hàm thời gian MONTH(date)  Trả tháng date DAY(date)  Trả ngày date WEEK(date)  Trả số tuần date tính từ ngày năm YEARWEEK(date)  Trả số tuần date tính từ ngày năm NOW() , SYSDATE(), CURRENT_TIMESTAMP  Trả ngày hệ thống Vd : Select NOW() → 2009-10-28 18:05:11 Vd : Select NOW()+0 → 20091028180511 35 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU 36  Các hàm sử dụng truy vấn Hàm thời gian CURDATE() , CURRENT_DATE  Trả ngày hệ thống CURTIME() , CURRENT_TIME  Trả ngày hệ thống HOUR(time)  Trả time MINUTE(time)  Trả phút time SECOND(time)  Trả giây time DATE_FORMAT(date,format)  Định dạng date theo format TIME_FORMAT(time,format)  Định dạng date theo format http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng truy vấn Các tham số thời gian 37 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng truy vấn Hàm thời gian TO_DAYS(date)  Trả số ngày từ ngày sau Công Nguyên đến date Vd : TO_DAYS("2000-01-01") → 730485 FROM_DAYS(number)  Trả ngày sau Công Nguyên number ngày Vd : FROM_DAYS(1000000) → 2737-11-28  TIME_TO_SEC(time)  Trả thời gian tính giây từ 0:00:00 đến time 38 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng truy vấn Hàm thời gian SEC_TO_TIME(seconds)  Trả thời điểm sau 0:00:00 khoảng thời gian seconds giây DATE_ADD(date, INTERVAL expression type)  Cộng thêm khoảng thời gian vào date ADDDATE(date, INTERVAL expression type)  Cộng thêm khoảng thời gian vào date 39 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng truy vấn Hàm thời gian DATE_SUB(date, INTERVAL expression type)  Bớt khoảng thời gian date SUBDATE(date, INTERVAL expression type)  Bớt khoảng thời gian date Vd: ADDDATE("1980-07-04",INTERVAL 15 YEAR) → 1995-07-04 Vd: SUBDATE(20001201, INTERVAL "10 4" YEAR_MONTH) 40 → 1990-08-01 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng truy vấn 41 http://www.thayphet.net CÔNG CỤ ĐỒ HỌA MYSQL GUI TOOLS  MySQL GUI Tool công cụ với giao diện đồ hoạ thân thiện, dễ dàng thao tác MySQL so với thao tác câu lệnh  Tải MySQL GUI Tools web thức MySQL(http://dev.mysql.com/downloads/gui-tools/5.0.html) Bộ công cụ bao gồm công cụ :  MySQL Administrator: Quản trị MySQL Server  MySQL Query Browser: Thực câu truy vấn  MySQL Migration Toolkit: Chuyển đổi hệ CSDL 42 http://www.thayphet.net CÔNG CỤ ĐỒ HỌA MYSQL GUI TOOLS  MySQL Administrator 43 http://www.thayphet.net CÔNG CỤ ĐỒ HỌA MYSQL GUI TOOLS  MySQL Administrator 44 http://www.thayphet.net CÔNG CỤ ĐỒ HỌA MYSQL GUI TOOLS  MySQL Administrator 45 TRƢỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN PHÁT TRIỂN PHẦN MỀM MÃ NGUỒN MỞ Chƣơng 3: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL HẾT 46 [...]...  Các kiểu dữ liệu trong MySQL  Kiểu số 12 http://www.thayphet.net 5 ĐỊNH NGHĨA BẢNG  Các kiểu dữ liệu trong MySQL  Kiểu chuỗi 13 http://www.thayphet.net 5 ĐỊNH NGHĨA BẢNG  Các kiểu dữ liệu trong MySQL  Kiểu ngày giờ 14 http://www.thayphet.net 5 ĐỊNH NGHĨA BẢNG  Các kiểu dữ liệu trong MySQL  Hỗn hợp (Miscellaneous) 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... 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 21 http://www.thayphet.net 5 ĐỊNH NGHĨA BẢNG  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. .. : Select dayofyear("00-02-01") → 1 33 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng trong truy vấn Hàm thời gian 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 34 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng trong truy vấn... dòng  Giá trị text được đặt trong 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 như sau : 1, "Nguyen Minh","Thanh" 22 http://www.thayphet.net 5 ĐỊNH NGHĨA BẢNG  Import & Export dữ liệu Import từ file text 23 http://www.thayphet.net... 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 '"'; 25 http://www.thayphet.net 5 ĐỊNH NGHĨA BẢNG  Import & Export dữ liệu Export dữ liệu : Chƣơng trình mysqldump - Để export cấu trúc và cả dữ. .. 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 35 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU 36  Các hàm sử dụng trong truy vấn Hàm thời gian 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ề... 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 26 Mysqldump.exe –u username –p database_name > filename.txt http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU 27 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng trong truy vấn 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í... Column3="Y" THEN 3 ELSE "NONE"; 30 http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng trong truy vấn 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" 31 http://www.thayphet.net... http://www.thayphet.net 6.TRUY VẤN DỮ LIỆU  Các hàm sử dụng trong truy vấn Hàm chuỗi 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","1 23" ) → "Filename.1 23" UCASE, LCASE  Chuyển chữ thường... 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 ... Administrator 45 TRƢỜNG ĐẠI HỌC NGUYỄN TẤT THÀNH KHOA CÔNG NGHỆ THÔNG TIN PHÁT TRIỂN PHẦN MỀM MÃ NGUỒN MỞ Chƣơng 3: HỆ QUẢN TRỊ CƠ SỞ DỮ LIỆU MYSQL HẾT 46 ... Lịch sử phát triển MySQL  1994: Được phát triển Michael Widenius David Axmark thuộc công ty TcX  0 5-1 995: Phiên  0 1-1 998: Phiên Windows 95, NT  0 1-2 001: Phiên  0 3- 2 0 03: Phiên  0 2-2 008: Sun... hệ QT CSDL đa luồng, mã nguồn mở  Chứ SQL Server, Oracle…Chuyên dụng cho mức độ  Phát triển Cty tư vấn phát triển ứng dụng Thụy Điển TcX sau đổi tên thành MySQL AB Hiện MySQL Oracle mua  MySQL

Ngày đăng: 14/04/2016, 12:38

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan