Nêu một ứng dụng CSDL của một tổ chức triển khai mà em biết
Đề bài
Nêu một ứng dụng CSDL của một tổ chức triển khai mà em biết ?
Lời giải chi tiết
Ứng dụng cơ sở dữ liệu của thư viện TP.HN sẽ quản lí thông tin người đọc, thông tin người mượn, thông tin về các nhân viên cấp dưới trong thư viện và còn những dữ liệu về người mượn đã mượn những quyển sách nào, khởi đầu từ ngày bao nhiêu .
Loigiaihay.com
Giả sử phải xây dựng một CSDL để quản lí mượn / trả sách cho thư viện.
Đề bài
Giả sử phải xây dựng một CSDL để quản lí mượn / trả sách cho thư viện. Theo em, cần phải tàng trữ những thông tin gì ? Hãy cho biết những việc phải làm để phân phối nhu yếu quản lí của người thủ thư ?
Lời giải chi tiết
Để xây dựng một CSDL để quản lí mượn / trả sách ở thư viện, ta phải tàng trữ các thông tin sau :
* tin tức về bạn đọc : Mã bạn đọc, tên bạn đọc, số chứng minh thư, ngày sinh, quê quán, thông tin về vi phạm .
* tin tức về sách : Mã sách, tên sách, thể loại, tác giả, nhà xuất bản, số lượng .
* tin tức mượn, trả sách : Mã mượn trả, mã bạn đọc, mã sách, số sách mượn, ngày mượn, ngày hẹn trả, thực trạng sách …
* Vi phạm : Mã mượn trả, lí do vi phạm, số tiền phạt .
Những việc cần làm để phân phối được nhu yếu quản lí của thủ thư là :
* Quản lý thông tin bạn đọc : Thêm bạn đọc, xóa bạn đọc, biến hóa thông tin bạn đọc, được cho phép bạn đọc đăng nhập mạng lưới hệ thống …
* Quản lí sách :
+ Nhập sách ( thêm – vô hiệu – sửa thông tin sách … )
+ Tìm kiếm sách : Tìm kiếm theo tên sách, loại sách, theo tác giả, theo nhà xuất bản …
* Quản lí mượn – trả : Tạo phiếu mượn, phiếu trả, phiếu phạt …
* Chức năng thống kê – báo cáo giải trình :
+ Thống kê sách trong thư viện : sách mượn nhiều nhất, sách đã hết .
+ Thống kê sách được mượn, được trả .
* Bảo mật mạng lưới hệ thống : Phân quyền cho các nhân viên cấp dưới ( thủ thư, fan hâm mộ … ) .
Loigiaihay.com
Access cho Microsoft 365 Access 2021 Access 2019 Access năm nay Access 2013 Access 2010 Access 2007 Xem thêm … Ít hơn
Một cơ sở dữ liệu được phong cách thiết kế đúng sẽ cung ứng cho bạn quyền truy nhập vào thông tin đúng chuẩn, mới nhất. Do một phong cách thiết kế tương thích rất thiết yếu để bạn đạt được tiềm năng của mình khi thao tác với cơ sở dữ liệu nên việc dành thời hạn thiết yếu để tìm hiểu và khám phá các nguyên tắc phong cách thiết kế tối ưu là vô cùng quan trọng. Cuối cùng, nhiều năng lực bạn sẽ tìm ra một cơ sở dữ liệu phân phối được nhu yếu của mình và hoàn toàn có thể thuận tiện biến hóa. Bài viết này sẽ phân phối hướng dẫn để lên kế hoạch tạo cơ sở dữ liệu trên máy tính. Bạn sẽ biết cách để quyết định hành động những thông tin mình cần, cách phân loại thông tin đó vào các bảng và cột thích hợp, cũng như mối quan hệ của chúng với nhau. Bạn cần đọc bài viết này trước khi tạo cơ sở dữ liệu trên máy tính lần đầu.
Quan trọng: Access mang đến các trải nghiệm thiết kế, giúp bạn tạo các ứng dụng cơ sở dữ liệu dành cho Web. Nhiều điểm cần cân nhắc về thiết kế sẽ khác với khi bạn thiết kế cho Web. Bài viết này không thảo luận về thiết kế ứng dụng cơ sở dữ liệu Web. Để biết thêm thông tin, hãy xem bài viết Xây dựng cơ sở dữ liệu để chia sẻ trên Web.
Access sẽ sắp xếp thông tin của bạn vào các bảng: danh sách các hàng và cột gợi nhớ đến một bảng hoặc bảng tính của nhân viên kế toán. Trong cơ sở dữ liệu đơn giản, bạn có thể chỉ có một bảng. Với hầu hết cơ sở dữ liệu, bạn sẽ cần nhiều bảng. Ví dụ: bạn có thể có một bảng lưu trữ thông tin về sản phẩm, một bảng khác lưu trữ thông tin về đơn hàng và một bảng khác nữa chứa thông tin về khách hàng.
Chính xác hơn, mỗi hàng sẽ được gọi là một bản ghi, còn mỗi cột sẽ được gọi là một trường. Bản ghi là một cách hữu dụng và nhất quán để tổng hợp thông tin về nội dung nào đó. Trường là một mục thông tin đơn — một loại mục xuất hiện trong mọi bản ghi. Ví dụ: trong bảng Sản phẩm, mỗi hàng hoặc bản ghi sẽ chứa thông tin về một sản phẩm. Mỗi cột hoặc trường sẽ chứa một số loại thông tin về sản phẩm đó, như tên hoặc giá cả.
Đầu Trang Một số nguyên tắc hướng dẫn quy trình tiến độ phong cách thiết kế cơ sở dữ liệu. Nguyên tắc tiên phong : thông tin trùng lặp ( hay còn gọi là dữ liệu dự trữ ) là có hại vì thông tin này gây tiêu tốn lãng phí về dung tích và làm tăng năng lực lỗi cũng như sự không đồng điệu. Nguyên tắc thứ hai là sự đúng chuẩn và sự hoàn hảo của thông tin rất quan trọng. Nếu cơ sở dữ liệu của bạn có chứa thông tin không đúng mực thì mọi báo cáo giải trình sử dụng thông tin từ cơ sở dữ liệu đó cũng sẽ chứa thông tin không đúng chuẩn. Kết quả là mọi quyết định hành động bạn đưa ra dựa trên các báo cáo giải trình đó sẽ trở thành thông tin rơi lệch. Do đó, phong cách thiết kế cơ sở dữ liệu tốt là một phong cách thiết kế :
Đầu Trang Quy trình phong cách thiết kế gồm có những bước sau :
Xác định mục đích của cơ sở dữ liệu
Việc này giúp bạn sẵn sàng chuẩn bị cho các bước tiếp theo.
Tìm và sắp xếp thông tin cần thiết
Thu thập mọi loại thông tin bạn hoàn toàn có thể muốn ghi vào cơ sở dữ liệu, như tên mẫu sản phẩm và số đơn hàng.
Phân chia thông tin vào các bảng
Phân chia mục thông tin vào các thực thể hoặc đối tượng người tiêu dùng chính, như Sản phẩm hoặc Đơn hàng. Mỗi đối tượng người tiêu dùng sau đó sẽ trở thành một bảng.
Biến mục thông tin thành các cột
Quyết định loại thông tin bạn muốn tàng trữ trong từng bảng. Mỗi mục sẽ trở thành một trường và được hiển thị dưới dạng cột trong bảng. Ví dụ : một bảng Nhân viên hoàn toàn có thể chứa các trường như Họ và Ngày Tuyển dụng.
Chỉ định khóa chính
Chọn khóa chính cho mỗi bảng. Khóa chính là một cột, dùng để xác lập từng hàng riêng. Ví dụ hoàn toàn có thể là ID Sản phẩm hoặc ID Đơn hàng.
Thiết lập mối quan hệ cho bảng
Xem bảng và quyết định hành động mối quan hệ của dữ liệu trong bảng đó với dữ liệu ở các bảng khác. Thêm các trường vào bảng hoặc tạo bảng mới để làm rõ mối quan hệ, nếu cần.
Tinh chỉnh thiết kế của bạn
Phân tích phong cách thiết kế để tìm lỗi. Tạo bảng và thêm một số ít bản ghi dữ liệu mẫu. Xem liệu bạn hoàn toàn có thể nhận được tác dụng mong ước từ bảng không. Tiến hành kiểm soát và điều chỉnh phong cách thiết kế, nếu cần.
Áp dụng các quy tắc chuẩn hóa
Áp dụng các quy tắc chuẩn hóa dữ liệu để xem liệu bảng của bạn đã được cấu trúc tương thích chưa. Tiến hành kiểm soát và điều chỉnh bảng, nếu cần.
Đầu Trang Tốt nhất, bạn nên ghi lại mục tiêu của cơ sở dữ liệu ra giấy — mục tiêu của cơ sở dữ liệu, bạn dự tính sử dụng cơ sở dữ liệu như thế nào và ai sẽ sử dụng cơ sở dữ liệu. Đối với cơ sở dữ liệu nhỏ dành cho doanh nghiệp mái ấm gia đình, ví dụ : bạn hoàn toàn có thể ghi đơn thuần như ” Cơ sở dữ liệu người mua lưu danh sách thông tin người mua cho mục tiêu tạo quảng cáo qua thư và tạo báo cáo giải trình “. Nếu cơ sở dữ liệu phức tạp hơn hoặc có nhiều người dùng, như thường xảy ra trong thiên nhiên và môi trường doanh nghiệp thì mục tiêu hoàn toàn có thể đơn thuần chỉ là một đoạn văn hoặc nhiều hơn và cần gồm có thời hạn, cũng như cách mỗi người sử dụng cơ sở dữ liệu. Tốt nhất, bạn nên có công bố thiên chức được xây dựng tốt hoàn toàn có thể được tham chiếu trong suốt quá trình phong cách thiết kế. Việc có công bố này sẽ giúp bạn tập trung chuyên sâu vào tiềm năng khi đưa ra quyết định hành động. Đầu Trang Để tìm và sắp xếp thông tin thiết yếu, hãy mở màn bằng thông tin hiện có. Ví dụ : bạn hoàn toàn có thể ghi lại đơn hàng vào sổ cái hoặc giữ lại thông tin người mua trên biểu mẫu giấy trong tủ hồ sơ. Thu thập những tài liệu đó và liệt kê từng loại thông tin hiển thị ( ví dụ : mỗi hộp bạn điền trên một biểu mẫu ). Nếu bạn không có sẵn bất kể biểu mẫu nào thì thay vào đó, hãy tưởng tượng bạn phải phong cách thiết kế một biểu mẫu để ghi lại thông tin người mua. Bạn muốn đưa thông tin nào vào biểu mẫu ? Bạn sẽ tạo những ô nào để điền ? Xác định và liệt kê từng mục trong số này. Ví dụ : giả sử bạn hiện đang giữ list người mua trên thẻ chỉ mục. Việc kiểm tra các thẻ này hoàn toàn có thể cho biết rằng mỗi thẻ lưu giữ một tên người mua, địa chỉ, thành phố, tiểu bang, mã bưu chính và số điện thoại thông minh. Mỗi mục trong số này đại diện thay mặt cho một cột tiềm năng trong bảng. Khi bạn chuẩn bị sẵn sàng list này, đừng lo ngại về việc phải tạo bảng tuyệt đối ngay từ đầu. Thay vào đó, hãy liệt kê từng mục bạn nghĩ ra. Nếu người khác sử dụng cơ sở dữ liệu, hãy hỏi cả quan điểm của họ. Bạn hoàn toàn có thể điều khiển và tinh chỉnh list sau đó. Tiếp theo, hãy xem xét loại báo cáo giải trình hoặc quảng cáo qua thư bạn hoàn toàn có thể muốn tạo ra từ cơ sở dữ liệu. Ví dụ : bạn hoàn toàn có thể muốn báo cáo giải trình doanh thu loại sản phẩm hiển thị doanh thu theo khu vực hoặc báo cáo giải trình tóm tắt hàng tồn dư hiển thị mức tồn dư mẫu sản phẩm. Có thể bạn cũng muốn tạo thư biểu mẫu để gửi đến người mua, công bố một sự kiện bán hàng hoặc đưa ra phí trả thêm. Thiết kế báo cáo giải trình trong đầu và tưởng tượng báo cáo giải trình sẽ trông như ra làm sao. Bạn muốn đưa thông tin nào vào báo cáo giải trình ? Liệt kê từng mục. Thực hiện tương tự như cho thư biểu mẫu và cho mọi báo cáo giải trình khác bạn dự tính tạo.
Đừng bao gồm dữ liệu đã tính toán
Xem thêm: Sửa nhà phòng ngủ tại Hà Nội
Trong hầu hết trường hợp, bạn không nên tàng trữ hiệu quả thống kê giám sát trong bảng. Thay vào đó, bạn hoàn toàn có thể nhu yếu Access thực thi thống kê giám sát khi muốn xem tác dụng. Ví dụ : giả sử có một báo cáo giải trình Sản phẩm Đã Đặt hàng, hiển thị tổng phụ số đơn vị chức năng đã đặt cho từng hạng mục mẫu sản phẩm trong cơ sở dữ liệu. Tuy nhiên, sẽ không có cột tổng phụ Sản phẩm Đã Đặt hàng trong bất kỳ bảng nào. Thay vào đó, bảng Sản phẩm sẽ gồm có cột Số đơn vị chức năng Đã Đặt hàng, tàng trữ số đơn vị chức năng đã đặt cho từng loại sản phẩm. Access sẽ sử dụng dữ liệu đó để giám sát tổng phụ mỗi khi bạn in báo cáo giải trình. Không nên lưu tổng phụ trong bảng.
Lưu trữ thông tin trong các phần logic nhỏ nhất
Bạn hoàn toàn có thể muốn để trường đơn cho tên khá đầy đủ hoặc cho tên mẫu sản phẩm kèm theo diễn đạt loại sản phẩm. Nếu bạn tích hợp nhiều loại thông tin trong một trường thì sau đó sẽ rất khó để truy xuất dữ kiện riêng. Hãy tìm cách tách thông tin thành các phần logic, ví dụ : tạo các trường riêng cho tên và họ hoặc cho tên loại sản phẩm, hạng mục và miêu tả.
Sau khi tinh chỉnh và điều khiển các cột dữ liệu trong từng bảng, bạn đã sẵn sàng chuẩn bị chọn khóa chính cho từng bảng. Đầu Trang
Mỗi bảng cần có một cột hoặc tập hợp cột riêng giúp xác định từng hàng được lưu trữ trong bảng. Đây thường là số nhận dạng duy nhất, chẳng hạn như số ID nhân viên hoặc số sê-ri. Trong thuật ngữ về cơ sở dữ liệu, thông tin này được gọi là khóa chính của bảng. Access sử dụng các trường khóa chính để liên kết nhanh dữ liệu từ nhiều bảng và kết hợp dữ liệu với nhau giúp bạn.
Nếu bạn đã có mã định danh duy nhất cho bảng, như số mẫu sản phẩm để xác lập riêng từng loại sản phẩm trong hạng mục, bạn hoàn toàn có thể sử dụng mã định danh đó làm khóa chính của bảng — nhưng chỉ khi các giá trị trong cột này sẽ luôn khác với từng bản ghi. Khóa chính của bạn không hề có giá trị trùng lặp. Ví dụ : không sử dụng tên người làm khóa chính vì tên không phải là duy nhất. Bạn rất dễ gặp trường hợp hai người có cùng tên trong bảng. Khóa chính sẽ luôn chỉ có một giá trị. Nếu một lúc nào đó, giá trị cột trở thành không xác lập hoặc không rõ ( giá trị bị thiếu ), bạn sẽ không hề sử dụng giá trị đó làm thành phần trong khóa chính. Bạn phải luôn chọn khóa chính có giá trị không đổi. Trong một cơ sở dữ liệu sử dụng nhiều bảng, bạn hoàn toàn có thể sử dụng khóa chính của mình làm tham chiếu trong bảng khác. Nếu khóa chính đổi khác, biến hóa cũng cần được vận dụng ở những nơi khóa được tham chiếu. Việc sử dụng khóa chính sẽ không biến hóa việc giảm thời cơ khóa chính hoàn toàn có thể trở nên không đồng nhất với các bảng khác tham chiếu đến khóa. Thông thường, người ta sẽ sử dụng 1 số ít duy nhất bất kể làm khóa chính. Ví dụ : bạn hoàn toàn có thể gán một số ít đơn hàng duy nhất cho từng đơn hàng. Mục đích duy nhất của số đơn hàng là để xác lập đơn hàng. Sau khi gán, số đơn hàng sẽ không khi nào đổi khác. Nếu bạn không có sẵn cột hoặc tập hợp cột hoàn toàn có thể làm khóa chính tốt, hãy xem xét sử dụng cột có kiểu dữ liệu Số Tự động. Khi bạn sử dụng kiểu dữ liệu Số Tự động, Access sẽ tự động hóa gán một giá trị cho bạn. Mã định danh không chứa dữ kiện ; mã định danh không chứa thông tin trong thực tiễn diễn đạt hàng mà mã đại diện thay mặt. Mã định danh không chứa dữ kiện là lựa chọn lý tưởng để dùng làm khóa chính vì chúng sẽ không biến hóa. Một khóa chính sẽ chứa các dữ kiện về một hàng — số điện thoại cảm ứng hoặc tên người mua ví dụ điển hình — nhiều năng lực sẽ biến hóa vì tự bản thân thông tin thực tiễn hoàn toàn có thể biến hóa. 1. Một cột được đặt là kiểu dữ liệu Số Tự động thường sẽ là một khóa chính tốt. Không có hai loại sản phẩm nào có ID giống nhau. Trong 1 số ít trường hợp, bạn hoàn toàn có thể muốn sử dụng hai trường trở lên cùng nhau, cung ứng khóa chính cho bảng. Ví dụ : một bảng Chi tiết Đơn hàng tàng trữ các khoản mục về đơn hàng sẽ sử dụng hai cột trong khóa chính : ID Đơn hàng và ID Sản phẩm. Khi khóa chính tiến hành nhiều cột, khóa còn được gọi là khóa tổng hợp. Với cơ sở dữ liệu doanh thu mẫu sản phẩm, bạn hoàn toàn có thể tạo ra cột Số Tự động cho từng bảng để làm khóa chính : ID_Sản_phẩm cho bảng Sản phẩm, ID_Đơn_hàng cho bảng Đơn hàng, ID_Khách_hàng cho bảng người mua và ID_Nhà_cung_cấp cho bảng Nhà phân phối. Đầu Trang Giờ bạn đã phân loại thông tin vào các bảng, bạn cần một cách để tích hợp thông tin lại với nhau theo các cách có ý nghĩa. Ví dụ : biểu mẫu sau đây gồm có thông tin từ một vài bảng. 1. Các thông tin trong biểu mẫu này được lấy từ bảng Khách hàng … 2. … bảng Nhân viên … 3. … bảng Đơn hàng … 4. … bảng Sản phẩm … 5. … và bảng Chi tiết Đơn hàng. Access là một mạng lưới hệ thống quản trị cơ sở dữ liệu đối sánh tương quan. Trong cơ sở dữ liệu đối sánh tương quan, bạn phân loại thông tin vào các bảng riêng, dựa theo đối tượng người dùng. Sau đó, bạn sử dụng mối quan hệ giữa các bảng để tích hợp thông tin với nhau khi cần. Đầu Trang Hãy xem xét ví dụ sau : bảng Nhà cung ứng và Sản phẩm trong cơ sở dữ liệu đơn hàng loại sản phẩm. Một nhà cung ứng hoàn toàn có thể phân phối bất kể số loại sản phẩm nào. Kết quả là, với mọi nhà phân phối được trình bày trong bảng Nhà cung ứng, hoàn toàn có thể có nhiều mẫu sản phẩm được trình bày trong bảng Sản phẩm. Do đó, mối quan hệ giữa bảng Nhà phân phối và bảng Sản phẩm là mối quan hệ một đối nhiều. Để bộc lộ mối quan hệ một đối nhiều trong phong cách thiết kế cơ sở dữ liệu của bạn, hãy lấy khóa chính ở bên ” một ” của mối quan hệ rồi thêm khóa đó dưới dạng một cột hay nhiều cột bổ trợ vào bảng ở bên ” nhiều ” của mối quan hệ. Ví dụ : trong trường hợp này, bạn thêm cột ID Nhà phân phối từ bảng Nhà phân phối vào bảng Sản phẩm. Khi đó, Access hoàn toàn có thể sử dụng số ID nhà cung ứng trong bảng Sản phẩm để xác lập đúng nhà cung ứng cho từng mẫu sản phẩm. Cột ID Nhà phân phối trong bảng Sản phẩm được gọi là khóa ngoại. Khóa ngoại là một khóa chính khác của bảng. Cột ID Nhà phân phối trong bảng Sản phẩm là một khóa ngoại vì cột này cũng là khóa chính trong bảng Nhà phân phối. Bạn cung ứng cơ sở để link các bảng tương quan trải qua thiết lập ghép đôi khóa chính và khóa ngoại. Nếu bạn không chắc các bảng nào có chung cột, việc xác lập mối quan hệ một đối nhiều sẽ bảo vệ hai bảng có tương quan thực sự sẽ nhu yếu cột chung. Đầu Trang Hãy xem xét mối quan hệ giữa bảng Sản phẩm và bảng Đơn hàng. Mỗi một đơn hàng hoàn toàn có thể gồm có nhiều loại sản phẩm. Mặt khác, mỗi một loại sản phẩm hoàn toàn có thể Open trên nhiều đơn hàng. Vì vậy, so với mỗi bản ghi trong bảng Đơn hàng, hoàn toàn có thể có nhiều bản ghi trong bảng Sản phẩm. Và so với mỗi bản ghi trong bảng Sản phẩm, hoàn toàn có thể sẽ có nhiều bản ghi trong bảng Đơn hàng. Mối quan hệ loại này được gọi là mối quan hệ nhiều đối nhiều vì với mẫu sản phẩm bất kể, hoàn toàn có thể có nhiều đơn hàng ; và với đơn hàng bất kể, hoàn toàn có thể có nhiều mẫu sản phẩm. Lưu ý rằng để phát hiện mối quan hệ nhiều đối nhiều giữa các bảng, điều quan trọng là bạn hãy xem xét cả hai phía của mối quan hệ. Đối tượng của hai bảng — đơn hàng và mẫu sản phẩm — có mối quan hệ nhiều đối nhiều. Vấn đề Open ở đây. Để hiểu rõ yếu tố, hãy tưởng tượng điều gì xảy ra nếu bạn nỗ lực tạo mối quan hệ giữa hai bảng bằng cách thêm trường ID Sản phẩm vào bảng Đơn hàng. Để có nhiều loại sản phẩm trên mỗi đơn hàng, bạn cần nhiều bản ghi trong bảng Đơn hàng cho mỗi đơn hàng. Bạn sẽ lặp lại thông tin đơn hàng cho từng hàng tương quan đến một đơn hàng duy nhất — hiệu quả là phong cách thiết kế không hiệu suất cao, dẫn đến dữ liệu không đúng mực. Bạn sẽ gặp phải yếu tố tương tự như nếu bạn đặt trường ID Đơn hàng vào trong bảng Sản phẩm — bạn sẽ có nhiều bản ghi trong bảng Sản phẩm cho từng mẫu sản phẩm. Bạn xử lý yếu tố này như thế nào ? Câu vấn đáp là tạo một bảng thứ ba, thường gọi là bảng nối, tách mối quan hệ nhiều đối nhiều thành hai mối quan hệ một đối nhiều. Bạn chèn khóa chính từ một trong hai bảng vào bảng thứ ba. Kết quả là, bảng thứ ba sẽ ghi lại từng lần Open hoặc trường hợp mối quan hệ. Mỗi bản ghi trong bảng Chi tiết Đơn hàng đại diện thay mặt cho một khoản mục trên đơn hàng. Khóa chính của bảng Chi tiết Đơn hàng gồm có hai trường — khóa ngoại từ bảng Đơn hàng và bảng Sản phẩm. Việc sử dụng trường ID Đơn hàng riêng không hiệu suất cao như khóa chính cho bảng này vì một đơn hàng hoàn toàn có thể có nhiều khoản mục. ID Đơn hàng được lặp lại cho từng khoản mục trên đơn hàng để trường không chứa các giá trị duy nhất. Việc sử dụng trường ID Sản phẩm riêng cũng không hiệu suất cao vì một loại sản phẩm hoàn toàn có thể Open trên nhiều đơn hàng khác nhau. Nhưng tích hợp lại, hai trường sẽ luôn tạo ra một giá trị duy nhất cho từng bản ghi. Trong cơ sở dữ liệu doanh thu loại sản phẩm, bảng Đơn hàng và bảng Sản phẩm không tương quan trực tiếp đến nhau. Thay vào đó, chúng tương quan gián tiếp qua bảng Chi tiết Đơn hàng. Mối quan hệ nhiều đối nhiều giữa đơn hàng và mẫu sản phẩm được biểu lộ trong cơ sở dữ liệu bằng cách sử dụng hai mối quan hệ một đối nhiều :
Từ bảng Chi tiết Đơn hàng, bạn hoàn toàn có thể xác lập mọi sản phẩn trên một đơn hàng đơn cử. Bạn cũng hoàn toàn có thể xác lập mọi đơn hàng về một mẫu sản phẩm đơn cử. Sau khi tích hợp bảng Chi tiết Đơn hàng, list bảng và trường sẽ trông như sau : Đầu Trang Một kiểu mối quan hệ khác là mối quan hệ một đối một. Ví dụ : giả sử bạn cần ghi lại 1 số ít thông tin bổ trợ về mẫu sản phẩm đặc biệt quan trọng mà bạn sẽ hiếm khi cần hoặc chỉ vận dụng cho một vài mẫu sản phẩm. Vì bạn không cần thông tin này liên tục và vì việc tàng trữ thông tin trong bảng Sản phẩm sẽ tạo ra dung tích trống cho toàn bộ loại sản phẩm vận dụng nên bạn cần đặt thông tin vào bảng riêng. Giống như bảng Sản phẩm, bạn sẽ sử dụng ID Sản phẩm làm khóa chính. Mối quan hệ giữa bảng bổ trợ này và bảng Sản phẩm là mối quan hệ một đối một. Với mỗi bản ghi trong bảng Sản phẩm, sẽ có sẵn một bản ghi khớp duy nhất trong bảng bổ trợ. Khi bạn xác lập mối quan hệ này, cả hai bảng phải có chung trường. Khi bạn phát hiện có nhu yếu về mối quan hệ một đối một trong cơ sở dữ liệu, hãy xem xét xem liệu bạn hoàn toàn có thể phối hợp thông tin từ hai bảng vào trong một bảng không. Nếu vì nguyên do nào đó mà bạn không muốn phối hợp, có lẽ rằng vì việc đó hoàn toàn có thể dẫn đến nhiều dung tích trống, list sau đây sẽ cho biết cách bạn sẽ trình bày mối quan hệ trong phong cách thiết kế :
Việc xác lập mối quan hệ giữa các bảng sẽ giúp bạn bảo vệ rằng bạn có các bảng và cột đúng. Khi sống sót mối quan hệ một đối một hoặc một đối nhiều, các bảng tương quan sẽ cần có chung một hoặc nhiều cột. Khi sống sót mối quan hệ nhiều đối nhiều thì sẽ cần có một bảng thứ ba để bộc lộ mối quan hệ. Đầu Trang Sau khi bạn có các bảng, trường và mối quan hệ thiết yếu, bạn nên tạo và điền dữ liệu mẫu vào các bảng, đồng thời thử thao tác với thông tin : tạo các truy vấn, thêm các bản ghi mới và v.v.. Việc này sẽ giúp tô sáng các yếu tố tiềm ẩn — ví dụ : bạn hoàn toàn có thể cần thêm một cột bạn đã quên chèn trong quy trình tiến độ phong cách thiết kế hoặc bạn hoàn toàn có thể có một bảng cần phân tách thành hai bảng để vô hiệu trùng lặp. Xem liệu bạn hoàn toàn có thể sử dụng cơ sở dữ liệu để nhận được câu vấn đáp mong ước không. Tạo bản thảo thô cho các biểu mẫu và báo cáo giải trình và xem liệu chúng có hiển thị dữ liệu như dự kiến không. Tìm dữ liệu trùng lặp không thiết yếu khi bạn tìm thấy bất kỳ trùng lặp nào, hãy biến hóa phong cách thiết kế để vô hiệu trùng lặp. Khi dùng thử cơ sở dữ liệu bắt đầu, bạn sẽ hoàn toàn có thể phát hiện ra thời cơ để cải tổ. Sau đây là một vài nội dung cần kiểm tra :
Giả sử mỗi loại sản phẩm trong cơ sở dữ liệu doanh thu loại sản phẩm đều thuộc về cùng một hạng mục, ví dụ điển hình như đồ uống, gia vị hoặc món ăn hải sản. Bảng Sản phẩm hoàn toàn có thể chứa một trường hiển thị hạng mục cho từng loại sản phẩm. Giả sử sau khi kiểm tra và tinh chỉnh và điều khiển phong cách thiết kế của cơ sở dữ liệu, bạn quyết định hành động tàng trữ miêu tả hạng mục cùng với tên hạng mục. Nếu bạn thêm trường Mô tả Danh mục vào bảng Sản phẩm, bạn phải lặp lại từng diễn đạt hạng mục cho từng loại sản phẩm thuộc hạng mục đó — đây không phải là giải pháp tốt. Giải pháp tốt hơn là đưa Danh mục thành một đối tượng người dùng mới cho cơ sở dữ liệu để theo dõi, với bảng riêng và khóa chính riêng. Khi đó, bạn hoàn toàn có thể thêm khóa chính từ bảng Danh mục vào bảng Sản phẩm làm khóa ngoại. Các bảng Danh mục và Sản phẩm có mối quan hệ một đối nhiều : một hạng mục hoàn toàn có thể gồm có nhiều mẫu sản phẩm nhưng một loại sản phẩm chỉ hoàn toàn có thể nằm trong một hạng mục. Khi bạn xem lại cấu trúc bảng, hãy theo dõi các nhóm lặp lại. Chẳng hạn, xem xét bảng chứa những cột sau :
Ở đây, mỗi mẫu sản phẩm là một nhóm cột lặp lại khác với các cột khác chỉ khi thêm số vào cuối tên cột. Khi bạn thấy các cột được đánh số theo cách này, bạn cần truy nhập lại vào phong cách thiết kế. Thiết kế này có một vài thiếu sót. Với người mới khởi đầu, phong cách thiết kế buộc bạn đặt số lượng giới hạn trên cho số loại sản phẩm. Ngay khi vượt quá số lượng giới hạn đó, bạn phải thêm một nhóm cột mới vào cấu trúc bảng, đây là một tác vụ quản trị chính. Một yếu tố nữa là nếu những nhà cung ứng đó có số loại sản phẩm ít hơn mức tối đa thì sẽ làm tiêu tốn lãng phí khoảng trống, vì các cột bổ trợ sẽ trống. Thiếu sót nghiêm trọng nhất với phong cách thiết kế này là phong cách thiết kế khiến bạn khó hoàn toàn có thể thực thi nhiều tác vụ, như sắp xếp hoặc lập chỉ mục bảng bằng ID hay tên loại sản phẩm. Bất cứ khi nào bạn thấy nhóm tái diễn, hãy xem kỹ lại phong cách thiết kế, chú ý quan tâm đến việc phân tách bảng thành hai. Trong ví dụ ở trên, tốt hơn bạn nên sử dụng hai bảng, một bảng cho nhà cung ứng và một bảng cho mẫu sản phẩm, được link bằng ID nhà phân phối. Đầu Trang Bạn hoàn toàn có thể vận dụng các quy tắc chuẩn hóa dữ liệu ( nhiều lúc được gọi là các quy tắc chuẩn hóa ) làm bước tiếp theo trong phong cách thiết kế. Bạn sử dụng những quy tắc này để xem liệu bảng của bạn đã được cấu trúc đúng chưa. Quy trình vận dụng quy tắc vào phong cách thiết kế cơ sở dữ liệu của bạn được gọi là chuẩn hóa cơ sở dữ liệu hoặc đơn thuần là chuẩn hóa. Chuẩn hóa sẽ hữu dụng nhất sau khi bạn trình bày mọi mục thông tin và đạt đến phong cách thiết kế sơ bộ. Ý tưởng này giúp bạn bảo vệ mình đã phân loại các mục thông tin vào bảng thích hợp. Chuẩn hóa không hề bảo vệ rằng bạn đã có toàn bộ các mục dữ liệu đúng để mở màn. Bạn vận dụng các quy tắc này liên tục, ở mỗi bước để bảo vệ phong cách thiết kế của bạn đạt đến một trong những trạng thái được gọi là ” biểu mẫu thông thường “. Năm biểu mẫu thông thường được gật đầu thoáng đãng — biểu mẫu thông thường tiên phong đến biểu mẫu thông thường thứ năm. Bài viết này phân phối thêm chi tiết cụ thể về ba biểu mẫu tiên phong vì chúng là biểu mẫu bắt buộc cho hầu hết phong cách thiết kế cơ sở dữ liệu. Biểu mẫu thông thường tiên phong nêu rõ mỗi giao điểm giữa hàng và cột trong bảng đó sống sót một giá trị duy nhất và không phải là list giá trị. Ví dụ : bạn không hề đặt tên trường là Giá cả và đặt nhiều Giá cả trong đó. Nếu bạn ý niệm mỗi giao điểm của hàng và cột là một ô thì mỗi ô chỉ hoàn toàn có thể nhận một giá trị. Biểu mẫu thông thường thứ hai nhu yếu mỗi cột không khóa phải trọn vẹn phụ thuộc vào trên khóa chính, chứ không chỉ trên một phần khóa. Quy tắc này được vận dụng khi bạn có khóa chính chứa nhiều cột. Ví dụ : giả sử bạn có bảng chứa những cột sau, khi ID Đơn hàng và ID Sản phẩm hình thành khóa chính :
Thiết kế này vi phạm biểu mẫu thông thường thứ hai vì Tên Sản phẩm nhờ vào vào ID Sản phẩm chứ không phải ID Đơn hàng nên phong cách thiết kế không nhờ vào trọn vẹn vào khóa chính. Bạn phải vô hiệu Tên Sản phẩm khỏi bảng. Tên Sản phẩm thuộc một bảng khác ( Sản phẩm ). Biểu mẫu thông thường thứ ba không chỉ nhu yếu tổng thể cột không khóa phụ thuộc vào trọn vẹn vào khóa chính mà còn nhu yếu chúng độc lập với nhau. Nói cách khác, mỗi cột không khóa phải nhờ vào vào khóa chính và không gì ngoài khóa chính. Chẳng hạn, giả sử bạn có bảng chứa những cột sau :
Giả sử Chiết khấu phụ thuộc vào giá bán lẻ đề xuất (SRP). Bảng này vi phạm biểu mẫu bình thường thứ ba vì cột Chiết khấu không khóa phụ thuộc vào một cột không khóa khác, SRP. Sự độc lập của cột nghĩa là bạn có thể thay đổi bất cứ cột không khóa nào mà không làm ảnh hưởng đến các cột khác. Nếu bạn thay đổi giá trị trong trường SRP, cột Chiết khấu sẽ thay đổi theo vì vi phạm quy tắc này. Trong trường hợp này, cột Chiết khấu sẽ được di chuyển sang bảng khác có khóa trên SRP.
Xem thêm: Sửa nhà trọn gói tại Hà Nội
Đầu Trang
Source: https://suanha.org
Category : Sửa Nhà