Đăng ký Đăng nhập
Trang chủ Tìm hiểu kỹ thuật phát triển phần mềm nguồn mở nhóm hệ quản trị csdl mysql...

Tài liệu Tìm hiểu kỹ thuật phát triển phần mềm nguồn mở nhóm hệ quản trị csdl mysql

.DOCX
32
362
109

Mô tả:

TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP HÀ NỘI BÀI TẬP LỚN PHẦN MỀM MÃ NGUỒN MỞ Tên đề tài:Tìm hiểu kỹ thuật phát triểnphần mềm nguồn mở nhóm hệ quản trị csdl MySQL Giáo viên hướng dẫn Lớp Nhóm Sinh viên thực hiện :Th.s Vũ Thị Dương :ĐH – KTPM6 – K10 :5 : Hà Nội 2018- 2019 Mục lục Chương 1. Bản địa hóa và quốc tế hóa PMMNM. Quy trình đánh giá và lựa chọn một sản phẩm phần mềm mã nguồn mở.........................................................................................4 1.1. Tìm hiểu về bản địa hóa và quốc tế hóa....................................................................4 1.1.1. Khái niệm quốc tế hóa phần mềm mã nguồn mở (internationalization)........4 1.1.2. Khái niệm bản địa hóa phần mềm mã nguồn mở (localization)......................4 1.1.3. So sánh bản địa hóa và quốc tế hóa phần mềm mã nguồn mở........................4 1.1.4. Đặc điểm của bản địa hóa...................................................................................4 1.1.5. Đặc điểm quốc tế hóa phần mềm........................................................................4 1.1.6. Vì sao cần bản địa hóa, quốc tế hóa PMMNM ?...............................................5 1.1.7. Nam. Một số lưu ý khi bản địa hóa phần mềm phần mềm mã nguồn mở tại Việt 5 1.1.8. Một số lưu ý khi quốc tế hóa phần mềm............................................................5 1.2. Hướng dẫn thực hiện quốc tế hóa phần mềm...........................................................6 1.2.1. Quy trình thực hiện quốc tế hóa phần mềm......................................................6 1.2.2. Hưỡng dẫn thực hiện quốc tế hóa phần mềm mã nguồn mở...........................6 1.2.2.1. Công cụ phát triển và kĩ thuật........................................................................6 1.2.2.2. Cô lập các nguồn lực có thể định vị được......................................................6 1.2.2.3. Kỹ thuật............................................................................................................7 1.2.3. 1.3. Giấy phép thực hiện.............................................................................................7 Quy trình lựa chọn và đánh giá một sản phẩm phần mềm nguồn mở...................8 1.3.1. Đánh giá một sản phẩm phần mềm nguồn mở................................................8 1.3.2. Quy trình lựa chọn một sản phẩm phần mềm nguồn mở................................8 Chương 2. Tìm hiểu kỹ thuật phát triển phần mềm nguồn mở nhóm hệ quản trị csdl MySQL........................................................................................................................................9 2.1. Kỹ thuật phát triển phần mềm nguồn mở nhóm hệ quản trị csdl MySQL...........9 2.1.1. Hệ thống phần mềm nguồn mở..........................................................................9 2.1.2. Kỹ thuật phát triển hệ thống phần mềm nguồn mở.........................................9 2.1.3. Hệ thống phần mềm nguồn mở nhóm hệ quản trị cơ sở dữ liệu...................10 2.1.4. Hệ quản trị cơ sở dữ liệu MySQL....................................................................10 2.1.5. Công cụ thiết kế cơ sở dữ liệu MySQL Workbench.......................................11 2.1.6. So sánh MYSQL với các hệ quản trị cơ sở dữ liệu khác................................13 2.2. Bài toán minh họa.....................................................................................................15 2 2.2.1. Tên bài toán: Bài toán xây dựng hệ thống Quản lý bán hàng với các bảng và ràng buộc..........................................................................................................................15 2.2.2. Sơ đồ liên kết các bảng......................................................................................16 2.2.3. Nội dung..............................................................................................................16 2.2.4. UseCase...............................................................................................................16 2.3 Thực hiện bài toán....................................................................................................21 2.3.1 Phạm Hồng Yến- Hướng dẫn cài đặt phần mềm MySQL(công cụ thiết kế cơ sở dữ liệu MySQL Workbench và thực hiện thiết kế cơ sở dữ liệu............................21 2.3.2 Cao Văn Đương- Thực hiện thiết kế cơ sở dữ liệu..........................................29 2.3.3 Trần Trung Anh – Thực hiện tính mở của công cụ MySQL Workbench và kết nối cơ sở dữ liệu với PHP..........................................................................................31 2.4 Kết luận......................................................................................................................33 2.4.1 Nội dung đã thực hiện.......................................................................................33 2.4.2 Hướng phát triển...............................................................................................34 Tài liệu tham khảo...........................................................................................................35 3 Chương 1. Bản địa hóa và quốc tế hóa PMMNM. Quy trình đánh giá và lựa chọn một sản phẩm phần mềm mã nguồn mở 1.1. Tìm hiểu về bản địa hóa và quốc tế hóa 1.1.1. Khái niệm quốc tế hóa phần mềm mã nguồn mở (internationalization) Quốc tế hóa phần mềm mã nguồn mở là quá trình thiết kếvà phát triển một ứng dụng phần mềm.Để phần mềm đó được điều chỉnh cho nhiều ngôn ngữ và khu vực mà không có sự thay đổi về kỹ thuật. 1.1.2. Khái niệm bản địa hóa phần mềm mã nguồn mở (localization) Bản địa hóa phần mềm mã nguồn mở là quá trình đáp ứng một phần mềm đã quốc tế hóa cho một vùng hoặc ngôn ngữ cụ thể bằng cách bổ sung các thành phần của ngôn ngữ đang hướng đến, cũng như dịch các đoạn văn bản trong phần mềm qua ngôn ngữ đó. Bản địa hóa khác với hoạt động dịch vì nó có liên quan tới nghiên cứu toàn diện về văn hóa của mỗi quốc gia để tùy biến sản phẩm thích nghi với các nhu cầu của nơi đó. Bản địa hoá phần mềm không chỉ là dịch giao diện người dùng.Đó là quá trình sửa đổi và làm cho sản phẩm phù hợp với các tiêu chuẩn văn hoá và phong tục, tập quán của người dùng cuối. 1.1.3. So sánh bản địa hóa và quốc tế hóa phần mềm mã nguồn mở Bản địa hóa phần mềm Quốc tế hóa phần mềm • Quá trình sửa đổi sản phẩm để • Thiết kế và phát triển phần mềm đáp ứng nhu cầu về ngôn ngữ, văn để nó có thể dễ dàng điều chỉnh sản hóa, pháp lý,… ở một địa phương phẩm với nhiều khu vực.Nghĩa là cụ thể. "chuẩn bị" sản phẩm của bạn cho bản địa hóa. • Phần mềm của bạn phải được • Một sản phẩm quốc tế có thể dễ quốc tế hóa thì mới có thế bản địa dàng được nội địa hóa, không có bất hóa. kỳ lỗi nào và với chi phí tối thiểu. 1.1.4. Đặc điểm của bản địa hóa Các đặc điểm của bản địa hóa:  Cân nhắc, xem xét đến các yếu tố nền tảng khu vực như văn hóa , xã hội,…  Có cả các yếu tố nhân khẩu học.  Nội dung phải đảm bảo mục đích kết nối.  Thường sử dụng cho mục đích tiếp thị.  Cần nhận biết được những yếu tố nhạy cảm trong văn hóa bản địa. 1.1.5. Đặc điểm quốc tế hóa phần mềm Các đặc điểm của quốc tế hóa phần mềm: 4  Việc sử dụng, thích nghi dễ dàng hơn.  Dùng được trên tất cả các nước với mọi đối tượng mà không quá khó khăn.  Đảm bảo tính đúng đắn, chuẩn mực trong tài liệu và chương trình. 1.1.6. Vì sao cần bản địa hóa, quốc tế hóa PMMNM ? Việc bản địa hóa, quốc tế hóa PMMNM giúp mang lại nhiều lợi íchcho người sử dụng:  Dễ thâm nhập được vào các thị trường nước ngoài.  Linh hoạt tiếp nhận người tiêu dùng, khách hàng mới.  Đảm bảo tính chuyên nghiệp của phần mềm.  Linh hoạt trong việc muốn nâng cao trải nghiệm người dùng với các gói ngôn ngữ thích hợp.  Gia tăng lợi nhuận doanh số bán hang trên toàn cầu.  Đạt được thế cạnh tranh so với các đối thủ khách cùng lĩnh vực trên thị trường. 1.1.7. Một số lưu ý khi bản địa hóa phần mềm phần mềm mã nguồn mở tại Việt Nam. Việc bản địa hóa PMNM ở Việt Nam cần lưu ý:  Định dạng ngày và thời gian  Loại tiền tệ  Định hướng ngôn ngữ  Quy tắc viết hoa  Quy tắc ngữ pháp  Ký tự và biểu tượng  Định dạng văn bản pháp lý của quốc gia cụ thể  Nội dung, hình ảnh, quy chiếu, đồ họa,… phù hợp với văn hóa. VD: Với hệ điều hành Window để có thể viết được ngôn ngữ tiếng việt bắt buộc chúng ta phải có phần mềm Unikey hỗ trợ. Hình 1.1. phần mềm unikey hỗ trợ trên hệ điều hành Window 1.1.8. Một số lưu ý khi quốc tế hóa phần mềm Việc quốc tế hóa PMNM cần lưu ý:  Khi dịch một văn bản sang ngôn ngữ khác thì độ dài văn bản sẽ thay đổi đáng kể. 5  Đảm bảo rằng văn bản vẫn được định dạng đúng trong tài liệu và chương trình.  Phải được lên kế hoạch trước để tránh gặp phải rắc rối và chi phí cho những thay đổi sau này. 1.2. Hướng dẫn thực hiện quốc tế hóa phần mềm 1.2.1. Quy trình thực hiện quốc tế hóa phần mềm Quy trình quốc tế hóa một phần mềm nguồn mở:  Xác định phần mềm địa phương.  Tìm hiểu các công cụ và kỹ thuật phát triển.  Phân lập tài nguyên có thể nội địa hóa.  Sử dụng kỹ thuật phát triển.  Xử lý chuỗi.  Thiết kế giao diện người dùng.  Đồ họa và ảnh chụp màn hình.  Xem xét các yếu tố văn hóa. 1.2.2. Hưỡng dẫn thực hiện quốc tế hóa phần mềm mã nguồn mở 1.2.2.1. Công cụ phát triển và kĩ thuật Khi phát triển một ứng dụng phần mềm, sự lựa chọn công cụ phát triển nên được thực hiện với sự xem xét các bộ ký tự được hỗ trợ của nó để đảm bảo ứng dụng có thể được bản địa hoá ở nhiều khu vực. 1.2.2.2. Cô lập các nguồn lực có thể định vị được Tách tất cả các yếu tố có thể bản địa hoá khỏi mã nguồn chính. Cách đơn giản nhất để tách các tài nguyên có thể bản địa hóa là đặt mọi thứ vào một kho lưu trữ như tệp tài nguyên Windows (* .rc), .Net assembly file, hoặc một cơ sở dữ liệu khi xử lý nội dung web. Đảm bảo rằng không có các phần tử hoặc chuỗi cứng nào (ví dụ các thông điệp được mã hoá cứng, …) được sử dụng trong mã. Các phần tử được mã hóa cứng khó có thể bản địa hóa vì chúng không xuất hiện cho đến khi phần mềm bản địa hoá được biên dịch và thực hiện. Một lần nữa, tất cả các chuỗi bản địa hóa nên được tách thành một hoặc nhiều file tài nguyên. Các thành phần chính của chương trình yêu cầu bản địa hoá bao gồm: menu, tin nhắn, hộp thoại, nhắc nhở, hình ảnh, âm thanh, thanh công cụ, thanh trạng thái và các hằng số. Các tài nguyên khác liên quan đến bản địa hóa cũng cần phải được cô lập, chẳng hạn như tên phông chữ và tên thư mục (ví dụ đường dẫn thư mục Windows My Documents). Các tài nguyên này cần được xác minh với nền tảng ngôn ngữ mục tiêu trong quá trình bản địa. Nếu không chức năng có thể bị tác động. Không phải chuỗi tài nguyên nào cũng cần được bản địa hóa. Ví dụ: chuỗi hoặc hộp thoại để gỡ lỗi, dòng lệnh, mã mẫu và câu lệnh SQL không cần phải được bản địa hóa. Chúng phải được tách ra khỏi các tài nguyên có thể định vị được hoặc có thể nhận dạng dễ dàng thông qua các hướng dẫn rõ ràng để tránh nhầm lẫn trong quá trình bản địa hóa. 6 Tạo danh sách tên sản phẩm / mô-đun và giữ chúng được cập nhật. Vì hầu hết các công ty không dịch tên sản phẩm / mô-đun nên cần phải nỗ lực để người bản xứ xác định tên sản phẩm hoặc mô-đun một cách dễ dàng hơn. Tương tự với tên sản phẩm, thuật ngữ sản phẩm quan trọng nên được bao gồm trong một bảng thuật ngữ chính. Quản lý thuật ngữ tốt sẽ giúp đi một chặng đường dài cho sự ổn định của bản dịch tốt hơn ở hạ nguồn. Các tệp tài nguyên cần được phát triển để biên dịch độc lập với môi trường biên soạn tài nguyên và có thể được chia sẻ với nhóm bản địa hóa mà không cần tiết lộ mã nguồn. Nhóm phát triển phần mềm nên tạo các trường hợp thử nghiệm bản địa hoá để đạt hiệu quả hơn. Các trường hợp thử nghiệm bao gồm một tập con của các trường hợp thử nghiệm được thiết kế cho kiểm tra chức năng của phiên bản nguồn. Các trường hợp thử nghiệm bản địa hóa tốt sẽ đảm bảo rằng người kiểm thử bản địa hóa có thể đi qua tất cả các hộp thoại UI quan trọng trong tất cả các nền tảng ngôn ngữ đích. 1.2.2.3. Kỹ thuật Chúng tôi khuyến nghị chỉ sử dụng hệ điều hành ngôn ngữ đích để biên soạn các tệp tin cục bộ. Ví dụ, nếu một ứng dụng được bản địa hoá sang tiếng Hy Lạp, các tập tin tài nguyên được bản địa hoá phải được biên dịch trong phiên bản Hy Lạp của hệ thống Windows. Sử dụng phông chữ mặc định của hệ thống cho ngôn ngữ mục tiêu để hiển thị văn bản đã được bản địa hóa (ví dụ: Sử dụng Simsun để hiển thị Tiếng Hoa Giản thể, sử dụng MS Gothic để hiển thị Nhật Bản vv). Chỉ sử dụng các ký tự tiếng Anh, số và ký tự gạch dưới trong tên tập tin sao cho các tệp tin có thể được mở trong bất kỳ nền tảng ngôn ngữ mục tiêu nào. Không bao giờ sử dụng các ký tự double-byte như tên tập tin của Trung Quốc cho các tập tin ứng dụng vì chúng sẽ không được chọn trên một hệ thống không phải của Trung Quốc. Giữ định dạng tệp phù hợp cho tất cả các tệp nguồn. Định dạng Unicode được khuyến cáo nếu không có khó khăn kỹ thuật hoặc các vấn đề để công ty hỗ trợ. Các tệp nguồn gốc như RC, HTML và XML nên được cung cấp cho bản địa hóa thay vì sử dụng các tệp đã biên dịch như DLL và CHM. Làm việc với các tập tin nguồn sẽ cho phép dịch thuật tốt hơn và thúc đẩy kỹ thuật để cập nhật trong tương lai. 1.2.3. Giấy phép thực hiện Việc bản địa hóa, quốc tế hóa phần mềm mã nguồn mở căn cứ vào một số giấy phép sau: Ngay từ năm 2004, Thủ tướng Chính phủ đã ban hành Quyết định số 235/2004/QĐTTg phê duyệt Dự án tổng thể về Ứng dụng và phát triển PMNM ở Việt Nam giai đoạn 2004-2008 đặt những nền móng ban đầu quan trọng trong việc đưa PMNM vào hoạt động của cơ quan nhà nước 7 Quyết định số 50/2009/QĐ-TTg ngày 3/4/2009 của Thủ tướng Chính phủ ban hành “Quy chế quản lý Chương trình phát triển công nghiệp phần mềm và Chương trình phát triển công nghiệp nội dung số Việt Nam” Điều 13. Tham gia nghiên cứu - phát triển, sản xuất sản phẩm công nghệ thông tin. Tổ chức, cá nhân tham gia chương trình phát triển các sản phẩm công nghệ thông tin trọng điểm do Nhà nước đầu tư phải đáp ứng các điều kiện sau: Có lĩnh vực hoạt động, trình độ chuyên môn phù hợp với việc nghiên cứu - phát triển, sản xuất, kinh doanh sản phẩm trong danh mục sản phẩm công nghệ thông tin trọng điểm; Có năng lực kỹ thuật, công nghệ, giải pháp phát triển các sản phẩm công nghệ thông tin phù hợp với chương trình phát triển các sản phẩm công nghệ thông tin trọng điểm. 1.3. Quy trình lựa chọn và đánh giá một sản phẩm phần mềm nguồn mở 1.3.1. Đánh giá một sản phẩm phần mềm nguồn mở Để đánh giá một phần mềm, có nhiều phương pháp để thực hiện, như CMMI, SSMM, RRR, SPICE và mỗi cách thức đó có những ưu và nhược điểm của riêng chúng. Nhưng quy trình OMM (Open Source Maturity Model) là phổ biến hơn cả.Phương pháp này được cấp phép theo Giấy phép Creative Commons. OMM là một phương pháp để đánh giá Phần mềm nguồn mở miễn phí miễn phí (FLOSS) và cụ thể hơn là quy trình phát triển FLOSS. Phương pháp này được phát hành theo giấy phép Creative Commons. OMM có thể giúp xây dựng niềm tin vào quá trình phát triển của các công ty sử dụng hoặc sản xuất FLOSS.Mục đích của phương pháp này là cho phép bất kỳ doanh nghiệp hoặc tổ chức nào sử dụng phần mềm FLOSS trong sản xuất và đặc biệt trong các sản phẩm chủ đạo của họ và không chỉ trong các nguyên mẫu. Mục tiêu của OMM là cung cấp cho cộng đồng FLOSS cơ sở để phát triển sản phẩm hiệu quả và làm cho sản phẩm của họ đáng tin cậy cho khách hàng tiềm năng, đồng thời tích hợp các công ty và cung cấp cho các nhà tích hợp FLOSS một cơ sở để đánh giá các quy trình được sử dụng bởi các cộng đồng FLOSS. 1.3.2. Quy trình lựa chọn một sản phẩm phần mềm nguồn mở Có 2 phương pháp lựa chọn phần mềm :  Phương pháp định tính: tiến hành phân tích các nhóm tiêu chí lựa chọn phần mềm trên cơ sở đưa ra ý kiến đánh giá và người có thẩm quyền cao nhất lựa chọn một phần mềm.  Phương pháp định lượng:  Xác định các tiêu chí lựa chọn và tầm quan trọng của tưng tiêu thức .  Đánh giá và cho điểm từng tiêu chí trong từng phần mềm.  Tính điểm tổng cộng của từng phần mềm trên cơ sở của từng tiêu thức có nhân với hệ số tầm quan trọng của tiêu thức đó.  Phần mềm nào có tổng số điểm cao hơn sẽ được chọn. 8 Tất cả các phép đo trong một danh mục, cho dù chúng là định tính hay định lượng, cần phải được so sánh với quy mô chuẩn hóa cho phép đo lường có ý nghĩa. Ví dụ: xem chỉ số “lượt tải xuống mỗi tháng”, nếu thành phần phần mềm có 2000 lượt tải xuống mỗi tháng, tốt hay xấu? Tỷ lệ đó trong một tỉ lệ? Quy mô và điểm có thể có thể là: 1 - 0 đến 499 lượt tải xuống / tháng - Không được chấp nhận 2 - 500 đến 999 lượt tải xuống / tháng - Kém 3 - 1000 đến 1999 lượt tải xuống / tháng - Có thể chấp nhận 4 - 2000 đến 2999 lượt tải xuống / tháng - Rất tốt 5 - 5000 lượt tải xuống / tháng - Tuyệt vời Chuẩn hóa điểm tính năng theo thang tỷ lệ từ 1 đến 5 bằng cách sử dụng lược đồ này: - dưới 65%, điểm = 1 (không được chấp nhận) - 65% - 80%, điểm = 2 (xấu) - 80% - 90%, điểm = 3 (chấp nhận được) - 90% - 96%, điểm = 4 (rất tốt) - lớn hơn 96%, điểm = 5 (xuất sắc) Chương 2. Tìm hiểu kỹ thuật phát triển phần mềm nguồn mở nhóm hệ quản trị csdl MySQL 2.1.Kỹ thuật phát triển phần mềm nguồn mở nhóm hệ quản trị csdl MySQL 2.1.1. Hệ thống phần mềm nguồn mở Phần mềm nguồn mở là phần mềm với mã nguồn được công bố và sử dụng một giấy phép nguồn mở. Phần mềm nguồn mở cho phép bất cứ ai đều có thể nghiên cứu, thay đổi và cải tiến phần mềm, và phân phối phần mềm ở dạng chưa thay đổi hoặc đã thay đổi căn cứ theo giấy phép nguồn mở. 2.1.2. Kỹ thuật phát triển hệ thống phần mềm nguồn mở Hầu hết các phần mềm nguồn mở nói chung và phần mềm nguồn mở hệ cơ sở dữ liệu nói riêng đề sử dụng mô hình lặp tang trưởng trong việc xây dựng phần mềm. Mô hình lặp tang trưởng là Một mô hình được lặp đi lặp lại từ khi bắt đầu cho đến khi làm đầy đủ chức năng.Quá trình này sau đó được lặp lại, tạo ra một phiên bản mới của phần mềm vào cuối mỗi lần lặp của mô hình. Thay vì phát triển phần mềm từ spec 9 đặc tả rồi mới bắt đầu thực thi thì mô hình này có thể đánh giá dần dần để đi đến yêu cầu cuối cùng. Hình 2.1. Bảng xếp hạng các hệ cơ sở dữ liệu theo mức độ phổ biến 2.1.3. Hệ thống phần mềm nguồn mở nhóm hệ quản trị cơ sở dữ liệu Cơ sở dữ liệu là các công cụ độc quyền được cung cấp bởi Oracle, IBM, Microsoft và một số nhà cung cấp nhỏ khác. Người dùng sẽ phải bỏ ra một số tiền để được sử dụng đầy đủ các chức năng cũng như không thể chỉnh sửa mã nguồn để thêm được các chức năng theo nhu cầu. Các phần mềm nguồn mở nhóm cơ sở dữ liệu ra đời là lựa chọn thay thế cho các sản phẩm cơ sở dữ liệu sở hữu độc quyền. Một số phần mềm Cơ sở dữ liệu nguồn mở hiện nay:  MySQL  PostgreSQL  MongoDB  Cassandra  MariaDB 2.1.4. Hệ quản trị cơ sở dữ liệu MySQL MySQL là hệ quản trị cơ sở dữ liệu tự do nguồn mở phổ biến nhất thế giới và được các nhà phát triển rất ưa chuộng trong quá trình phát triển ứng dụng. MySQL được sử dụng cho việc bổ trợ NodeJs, PHP, Perl, và nhiều ngôn ngữ khác, làm nơi lưu trữ những thông tin trên các trang web viết bằng NodeJs, PHP,.. Ưu điểm:  MySQL rất nhanh, đáng tin cậy, và rất dễ sử dụng.  MySQL sử dụng cú pháp SQL tiêu chuẩn.  MySQL được biên dịch trên một số nền tảng. 10  MySQL là mã nguồn mở nên hoàn toàn miễn phí khi sử dụng. MySQL là hệ quản trị cơ sở dữ liệu nguồn mở phổ biến nhất tính đến tháng 5 năm 2018. Hình 2.2. Bảng xếp hạng các hệ cơ sở dữ liệu theo mức độ phổ biến 2.1.5. Công cụ thiết kế cơ sở dữ liệu MySQL Workbench 2.1.5.1. Giới thiệu công cụ MySQL Workbench MySQL WorkBench công cụ thiết kế cơ sở dữ liệu đa nền tảng, có thể sử dụng trên các hệ điều hành Windows, Linux và OS X. MySQL WorkBench giúp hỗ trợ bạn thao tác với MySQL thông qua giao diện đồ họa. Ưu điểm MySQL Workbench:  Trình trực quan để giao tiếp với MySQL  Thực hiện hiển thị đồ họa cho người dùng như các bảng, các database, mô hình…  Nếu không có nó thì ta sẽ phải giao tiếp với MySQL bằng giao diện dòng lệnh khá phức tạp và mất thời gian.  Dễ tiếp cận, phổ biến, cộng đồng nguiời dùng lớn. Thao tác với MySQL Workbench:  Tạo connection  Quản lý cơ sở dữ liệu ( database) ( tạo mới, thiết lập gía trị … )  Quản lý table trong database ( tạo mới, thiết lập giá trị, tạo foreign key … )  Thực hiện truy vấn  Sao lưu dữ liệu ( Export )  Phục hồi dữ liệu ( Import ) 11      Tạo tài khoản ( user ) Phân quyền cho tài khoản Xóa database Xóa table Xóa user 2.1.5.2. Tính mở trong MySQL Workbench MySQL Workbench cung cấp một hệ thống mở rộng (extension) và hệ thống kịch bản(scripting) cho phép nhà phát triển mở rộng khả năng của MySQL Workbench. Cốt lõi của MySQL Workbench được phát triển bằng cách sử dụng C ++, bạn có thể khai thác chức năng lõi này bằng cách sử dụng ngôn ngữ kịch bản lệnh Python. Hệ thống mở rộng cho phép các khả năng sau:  Tự động hóa các tác vụ phổ biến.  Mở rộng giao diện người dùng Workbench.  Tạo công cụ / Plugins (mã có thể được gọi từ hệ thống menu Workbench).  Thao tác các lược đồ.  Tạo các tính năng Workbench tùy chỉnh. 12 2.1.5.3. Plugin trong mysql workbench Plugin là các Mô-đun đặc biệt được hiển thị cho người dùng thông qua GUI Workbench. Plugin có thể là một hàm đơn giản thực hiện một số thao tác trên đầu vào và kết thúc mà không cần tương tác thêm với người dùng. Ví dụ: Ví dụ về điều này bao gồm tự động sắp xếp một sơ đồ, hoặc thực hiện thay đổi hàng loạt cho các đối tượng. 2.1.6. So sánh MYSQL với các hệ quản trị cơ sở dữ liệu khác Windows Mac OS X Linux BSD UNIX MySQL Có Có Có Có Có ADS Có Không Có Có Có Apache Derby2 Có Có Có Có Có DB2 Có Không Có Không Có Firebird Có Có Có Có Có HSQLDB2 Có Có Có Có Có H22 Có Có Có Có Có Informix Có Có Có Có Có Ingres Có Có Có Có Có InterBase Có Không Có Không Có (Solaris) Adabas Có Không Có Không Có MaxDB Có Không Có Không Có Microsoft SQL Server Có Không Không Không Không Oracle Có Có Có Không Có PostgreSQL Có Có Có Có Có Pyrrho DBMS Có (.NET) Không Có (Riêng lẻ) Không Không SmallSQL Có Có Có Có Có SQLite Có Có Có Có Có Windows Mac OS X Linux BSD UNIX Hình 2.3.Các hệ quản trị CSDL trên các Hệ điều hành 13 ACID Referential integrity Transactions Unicode MySQL Phụ thuộc 3 Phụ thuộc 3 Phụ thuộc 3 Có / UTF-8 (3-byte) &UCS-2 Oracle Có Có Có Có ADS Có Có Có Có Apache Derby Có Có Có Có DB2 Có Có Có Có Firebird Có Có Có Có HSQLDB Có Có Có Có H2 Có Có Có Có Informix Có Có Có Có Ingres Có Có Có Có InterBase Có Có Có Có MaxDB Có Có Có Có Microsoft SQL Server Có Có Có Có Pyrrho DBMS Có Có Có Có SQLite Có Không 4 Cơ bản 4 Có Teradata Có Có Có Có ACID Referential integrity Transactions Unicode Hình 2.4.Tính năng cơ bản trên các hệ quản trị CSDL Bảng tạm Khung nhìn cụ thể MySQL Có Tương tự6 Oracle Có Có PostgreSQL Có Tương tự7 Pyrrho DBMS Không Không SQLite Có Không Teradata Có Có 14 Bảng tạm Khung nhìn cố định Hình 2.5.Bảng và khung nhìn trên các hệ quản trị CSDL Domain Cursor Trigger Hàm11 Thủ tục11 External routine 11 MySQL Không Có Có Có Có Có Firebird Có Có Có Có Có Có HSQLDB ? Không Có Có Có Có H2 ? Không Có Có Có Có Informix ? Có Có Có Có Có Ingres Có Có Có Có Có Có InterBase Có Có Có Có Có Có MaxDB Có Có Có Có Có ? Microsoft SQL Server Có (2000 and beyond) Có Có Có Có Có Oracle Có Có Có Có Có Có PostgreSQL Có Có Có Có Có Có Pyrrho DBMS Có Có Có Có Có Có SQLite Không Không Có Không Không Có Teradata Không Có Có Có Có Có Domain Cursor Trigger Hàm Thủ tục External routine Hình 2.5.Các đối tượng khác trên các hệ quản trị CSDL 2.2.Bài toán minh họa 2.2.1. Tên bài toán: Bài toán xây dựng hệ thống Quản lý bán hàng với các bảng và ràng buộc Bài toán xây dựng CSDL để quản lý bán hàng Cửa hàng chuyên bán các loại vật tư của như nhà cung cấp. Mỗi vật tư có mã vật tư , tên vật tư , đơn vị tính và phần trăm lợi nhuận . Vật tư được cửa hàng cung cấp thông qua phiếu xuất , mỗi phiếu xuất đều có thông tin số phiếu xuất, ngày xuất và tên khách hàng. Kèm theo đó là chi tiết phiếu xuất cho biết 15 thông tin của vật tư cần xuất là số phiếu xuất , mã vật tư , số lượng xuất và đơn giá xuất. Cứ sau 1 ngày hoạt động bán hàng thì hệ thống sẽ tiến hàng thông kê lại số lượng vật tư theo bảng Tồn kho với các thôn tin thống kê là năm tháng , mã vật tư, số lượng đầu , số lượng nhập ,số lượng xuất và số lượng cuối. Theo đó sẽ biết được vật tư là đã hết và chuẩn bị hết hàng, để lê kế hoạch đặt hàng sớm nhất theo bảng DonDH và CTDonDH. Với các thông tin số đơn đặt hàng , ngày đặt hàng và mã nhà cung cấp của bảng DonDH, các thông tin số đơn hàng , mã vật tư và số lượng đặt của bảng CTDonDH. Thông tin nhà cung cấp bao gồm mã nhà cung cấp, tên nhà cung cấp, địa chỉ và số điện thoại. Vật tư được bàn giao từ nhà cung cấp đến cửa hàng thông qua phiếu nhập và chi tiết phiếu nhập, với các thông tin số phiếu nhập , ngày nhập và số đơn hàng của bảng phiếu nhập, số phiếu nhập , mã vật tư , số lượng nhập và đơn giá nhập của bảng chi tiết phiếu nhập. Phân tích và xây dựng cơ sở dữ liệu Các bảng lưu trữ: Pxuat (SoPX,NgayXuat,TenKH) NhaCC (MaNhaCC,TenNCC,DiaChi,DienThoai) DonDH (SoDH,NgayDH,MaNhaCC) Pnhap (SoPN, NgayNhap,SoDH) VatTu (MaVTu,TenVTu,DVTinh,PhanTram) CTPXuat (SoPX,MaVTu,SLXuat,DGXuat) CTPNhap (SoPN,MaVTu,SLNhap,DGNhap) CTDonDH (SoDH,MaVTu,SLDat) TonKho (NamThang,MaVTu,SLDau,Slnhap,SL Xuat,SLCuoi) Bảng phiếu xuất Tên cột SoPX NgayXuat TenKH Kiểu dữ liệu Int Date Nvarchar(50) Ý nghĩa Số phiếu xuất Ngày xuất Tên khách hàng Bảng chi tiết phiếu xuất Tên cột SoPX MaVTu SLXuat DGXuat Kiểu dữ liệu Int Int Int Money Tên cột MaNCC Kiểu dữ liệu Int Ý nghĩa Số phiếu xuất Mã vật tự Số lượng xuất Đơn giá xuất Bảng nhà cung cấp Ý nghĩa Mã nhà cung cấp 16 TenNCC DiaChi DienThoai Nvarchar(50) Nvarchar(50) Int Tên nhà cung cấp Địa chỉ Điện thoại Bảng tồn kho Tên cột Namthang MaVTu SLDau Slnhap int Slxuat Slcuoi Kiểu dữ liệu Date Int Int Int Int Int Tên cột MaVTu TenVTu DVTinh PhanTram Kiểu dữ liệu Int Nvarchar(50) Int Int Ý nghĩa Năm tháng Mã vật tư Số lượng đầu Số lượng nhập Số lượng xuất Số lượng cuối Bảng vật tư Ý nghĩa Mã vật tư Tên vật tư Đơn vị tính Phần trăm Bảng đơn đặt hàng Tên cột SoDH NgayDH MaNCC Kiểu dữ liệu Int Date Int Ý nghĩa Số đơn hàng Ngày đặt hàng Mã nhà cung cấp Bảng chi tiết đơn đặt hàng Tên cột SoDH MaVTu SLDat Kiểu dữ liệu Int Int Int Ý nghĩa Số đơn hàng Mã vật tư Số lượng đặt Bảng phiếu nhập Tên cột SoPN NgayNhap SoDH Kiểu dữ liệu Int Date Int Ý nghĩa Số phiếu nhập Ngày nhập Số đơn hàng Bảng chi tiết phiếu nhập Tên cột SoPn MaVTu Slnhap Kiểu dữ liệu Int Int Int Ý nghĩa Số phiếu nhập Mã vật tư Số lượng nhập 17 DGNhap Money Đơn giá nhập 2.2.2. Sơ đồ liên kết các bảng Hình 2.6.Sơ đồ liên kết các bảng 2.2.3. Nội dung Các bước thực hiện:(Dùng ngôn ngữ truy vấn T-SQL)  Bước 1: Tạo database  Bước 2: Tạo các bảng và ràng buộc giữa các bảng  Bước 3: Tạo Model trực quan cho cơ sở dữ liệu  Bước 4: Thực hiện các truy vấn trên cơ sở dữ liệu vừa tạo 2.3 Thực hiện bài toán 2.3.1 Phạm Hồng Yến- Hướng dẫn cài đặt phần mềm MySQL(công cụ thiết kế cơ sở dữ liệu MySQL Workbench và thực hiện thiết kế cơ sở dữ liệu 2.3.1.1 Sơ lược về các phiên bản của MySQL Có 2 phiên bản MySQL:  MySQL Cummunity: Là phiên bản miễn phí. (Chúng ta sẽ cài đặt phiên bản này).  MySQL Enterprise Edition: Là phiên bản thương mại. 18 2.3.1.2 Download MySQL Chúng ta sẽ download và sử dụng MySQL miễn phí: MySQL Community Server. MySQL Community Server có 2 phần quan trọng nhất:  MySQL Server  MySQL Workbench (Công cụ trục quan để học và làm việc với MySQL) B1: Vào địa chỉ Download MySQL Community: https://dev.mysql.com/downloads/ B2: Click “Go to Download Page” 19 B3: Chọn phiên bản phù hợp với máy tính B4: Không đăng nhập vào Oracle Web mà sẽ Download luôn. 20
- Xem thêm -

Tài liệu liên quan