Bạn hiện đang ngoại tuyến, hãy chờ internet để kết nối lại

Mô tả về những điều cơ bản bình thường hóa bộ máy cơ sở dữ liệu

Hỗ trợ dành cho Office 2003 đã kết thúc

Microsoft đã kết thúc hỗ trợ dành cho Office 2003 vào ngày 8 tháng 4 năm 2014. Thay đổi này đã ảnh hưởng đến các bản cập nhật phần mềm và các tùy chọn bảo mật của bạn. Tìm hiểu ý nghĩa của điều này với bạn và cách thực hiện để luôn được bảo vệ.

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch thuật của Microsoft và có thể được Cộng đồng Microsoft chỉnh sửa lại thông qua công nghệ CTF thay vì một biên dịch viên chuyên nghiệp. Microsoft cung cấp các bài viết được cả biên dịch viên và phần mềm dịch thuật thực hiện và cộng đồng chỉnh sửa lại để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng nhiều ngôn ngữ Tuy nhiên, bài viết do máy dịch hoặc thậm chí cộng đồng chỉnh sửa sau không phải lúc nào cũng hoàn hảo. Các bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này: 283878
Novice: Đòi hỏi kiến thức của giao diện người dùng trên máy tính người dùng duy nhất.

Một phiên bản Microsoft Access 2000 của bài viết này, xin xem 209534.
Để một Microsoft Access 95 hoặc một phiên bản Microsoft truy cập 97 của bài viết này, hãy xem 100139.
Tóm tắt
Bài viết này giải thích thuật ngữ bình thường hóa bộ máy cơ sở dữ liệu cho người mới Bắt đầu. Một sự hiểu biết cơ bản của thuật ngữ này là hữu ích khi thảo luận về việc thiết kế bộ máy cơ sở dữ liệu quan hệ.

Lưu ý: Microsoft cũng cung cấp một WebCast thảo luận về những điều cơ bản bình thường hóa bộ máy cơ sở dữ liệu. Để xem WebCast này, xin vui lòng ghé thăm Web site sau của Microsoft:
Thông tin thêm

Mô tả về bình thường hoá

Bình thường hóa là quá trình tổ chức dữ liệu trong bộ máy cơ sở dữ liệu. Điều này bao gồm việc tạo ra bảng và thiết lập mối quan hệ giữa các bảng theo quy tắc được thiết kế để bảo vệ dữ liệu và để làm cho bộ máy cơ sở dữ liệu linh hoạt hơn bằng cách loại bỏ sự thừa và phụ thuộc không phù hợp.

Dự phòng dữ liệu chất thải đĩa và tạo ra các vấn đề bảo trì. Nếu dữ liệu tồn tại ở nhiều hơn một nơi phải được thay đổi, dữ liệu phải được thay đổi trong cách chính xác cùng một trong tất cả các địa điểm. Một sự thay đổi địa chỉ khách hàng là dễ dàng hơn để thực hiện nếu dữ liệu đó được lưu trữ chỉ trong bảng khách và nơi nào trong bộ máy cơ sở dữ liệu.

Một "phụ thuộc không phù hợp" là gì? Trong khi nó là trực quan cho người dùng để xem trong bảng khách cho địa chỉ của một khách hàng cụ thể, nó không có thể làm cho tinh thần để tìm có tiền lương của nhân viên kêu gọi các khách hàng đó. Tiền lương của nhân viên là liên quan đến, hoặc phụ thuộc vào, các nhân viên và do đó nên được chuyển đến bảng nhân viên. Không phù hợp phụ thuộc có thể làm dữ liệu khó khăn để truy cập bởi vì con đường để tìm các dữ liệu bị thiếu hoặc bị hỏng.

Không có một vài quy tắc cho bình thường hóa bộ máy cơ sở dữ liệu. Mỗi quy tắc được gọi là một "hình thức bình thường." Nếu các quy tắc đầu tiên được quan sát thấy, bộ máy cơ sở dữ liệu được gọi là "dưới hình thức đầu tiên của bình thường." Nếu các quy tắc đầu tiên được quan sát thấy, bộ máy cơ sở dữ liệu được coi là "hình thức bình thường thứ ba." Mặc dù các cấp khác bình thường hóa là có thể, thứ ba hình thức bình thường được xem là mức cao nhất cần thiết cho hầu hết các ứng dụng.

Như với nhiều quy tắc biểu mẫu chính và thông số kỹ thuật, kịch bản thế giới thực không luôn luôn cho phép cho phù hợp hoàn hảo. Nói chung, bình thường hóa yêu cầu bổ sung bảng và một số khách hàng tìm thấy điều này cồng kềnh. Nếu bạn quyết định vi phạm một trong các quy tắc đầu tiên ba bình thường hóa, đảm bảo rằng ứng dụng của bạn dự kiến bất kỳ vấn đề nào có thể xảy ra, chẳng hạn như dữ liệu dự phòng và không phù hợp phụ thuộc.

Những mô tả sau đây bao gồm các ví dụ.

Hình thức bình thường đầu tiên

  • Loại bỏ nhóm lặp lại trong bảng cá nhân.
  • Tạo một bảng riêng biệt cho mỗi tập hợp dữ liệu liên quan.
  • Xác định mỗi tập hợp các dữ liệu có liên quan với một khoá chính.
Không sử dụng nhiều lĩnh vực trong một bảng duy nhất để lưu trữ dữ liệu tương tự. Ví dụ, để theo dõi một mục hàng tồn kho có thể đến từ hai nguồn có thể, một kỷ lục hàng tồn kho có thể chứa trường cho nhà cung cấp mã số 1 và nhà cung cấp mã số 2.

Những gì sẽ xảy ra khi bạn thêm một nhà cung cấp thứ ba? Thêm một lĩnh vực không phải là câu trả lời; nó yêu cầu sửa đổi chương trình và bảng và không thuận lợi chứa một số năng động của nhà cung cấp. Thay vào đó, nơi tất cả nhà cung cấp thông tin trong một bảng riêng biệt được gọi là nhà cung cấp, sau đó liên kết hàng tồn kho để nhà cung cấp với một phím số mục, hoặc nhà cung cấp hàng tồn kho với mã nhà cung cấp.

Thứ hai hình thức bình thường

  • Tạo bảng riêng biệt cho bộ giá trị áp dụng tomultiple hồ sơ.
  • Liên hệ các bảng với một chìa khóa nước ngoài.
Hồ sơ không nên phụ thuộc vào bất cứ điều gì khác hơn so với một bảng chính (phím một hợp chất, nếu cần thiết). Ví dụ, xem xét địa chỉ của khách hàng trong một hệ thống kế toán. Địa chỉ là cần thiết bởi bảng khách, mà còn bởi các bảng đơn đặt hàng, vận chuyển, hóa đơn, tài khoản phải thu, và các bộ sưu tập. Thay vì lưu trữ địa chỉ của khách hàng như là một mục nhập riêng biệt trong mỗi của các bảng, lưu trữ nó ở một nơi, hoặc trong bảng khách hoặc trong bảng địa chỉ riêng biệt.

Dạng chuẩn 3

  • Loại bỏ các lĩnh vực không phụ thuộc vào quan trọng.
Giá trị trong một kỷ lục mà không phải là một phần của hồ sơ đó khóa không thuộc trong bảng. Nói chung, bất cứ lúc nào nội dung của một nhóm các lĩnh vực thể áp dụng cho nhiều hơn một hồ sơ duy nhất trong bảng, xem xét việc đặt các lĩnh vực này trong một bảng riêng biệt.

Ví dụ, trong một bảng tuyển dụng nhân viên, đại học tên và địa chỉ của một ứng cử viên có thể được bao gồm. Nhưng bạn cần một danh sách đầy đủ của trường đại học cho nhóm thư. Nếu đại học thông tin được lưu trữ trong bảng ứng cử viên, có là không có cách nào để danh sách trường đại học với không có ứng cử viên hiện tại. Tạo ra một bảng trường đại học riêng biệt và liên kết nó với ứng cử viên bảng với một chìa khóa mã trường đại học.

Ngoại lệ: Tôn trọng các hình thức thứ ba bình thường, trong khi lý thuyết hấp dẫn, là không luôn luôn thực tế. Nếu bạn có một bảng khách và bạn muốn loại bỏ tất cả phụ thuộc có thể interfield, bạn phải tạo bảng riêng biệt cho thành phố, mã ZIP, bán hàng đại diện, khách hàng lớp học, và bất kỳ yếu tố nào khác có thể được nhân đôi ở nhiều hồ sơ. Trong lý thuyết, bình thường hóa là giá trị pursing. Tuy nhiên, nhiều bảng nhỏ có thể làm suy giảm hiệu suất hoặc vượt quá mở tập tin và bộ nhớ năng lực.

Nó có thể là khả thi hơn để áp dụng hình thức bình thường thứ ba chỉ để dữ liệu thay đổi thường xuyên. Nếu vẫn còn một số lĩnh vực phụ thuộc, thiết kế ứng dụng của bạn để yêu cầu người sử dụng để xác minh tất cả liên quan đến lĩnh vực khi bất kỳ ai bị thay đổi.

Các hình thức bình thường hóa khác

Thứ tư hình thức bình thường, cũng gọi là Boyce Codd Normal Form (BCNF), và thứ năm dưới hình thức bình thường tồn tại, nhưng hiếm khi được coi là trong thực tế thiết kế. Bỏ qua những quy tắc này có thể dẫn đến thiết kế bộ máy cơ sở dữ liệu ít hơn hoàn hảo, nhưng không nên ảnh hưởng đến chức năng.

Bình thường hóa một bảng ví dụ

Các bước sau chứng minh quá trình bình thường hóa một bảng sinh viên hư cấu.
  1. Unnormalized bảng:

    Học sinh #Cố vấnADV-phòngClass1Class2Class3
    1022Jones412101-07143-01159-02
    4123Smith216201-01211-02214-01
  2. Hình thức bình thường đầu tiên: Không có lặp đi nhóm lặp

    Tablesshould có kích thước chỉ có hai. Kể từ khi một học sinh có nhiều lớp học, theseclasses nên được liệt kê trong một bảng riêng biệt. Lĩnh vực Class1, Class2, và Class3in các hồ sơ trên là dấu kiểm hiệu của thiết kế rắc rối.

    Spreadsheetsoften sử dụng kích thước thứ ba, nhưng bàn không nên. Một cách khác để xem xét vấn đề atthis với một mối quan hệ một rất nhiều, không đặt một bên và phía bên nhiều trong cùng một bảng. Thay vào đó, tạo một bảng trong normalform đầu tiên bằng cách loại bỏ nhóm lặp lại (hạng #), như hình dưới đây:

    Học sinh #Cố vấnADV-phòngLớp #
    1022Jones412101-07
    1022Jones412143-01
    1022Jones412159-02
    4123Smith216201-01
    4123Smith216211-02
    4123Smith216214-01
  3. Thứ hai hình thức bình thường: Loại bỏ dữ liệu dự phòng

    Notethe giá nhiều lớp # trị cho mỗi học sinh # giá trị trong bảng ở trên. Lớp #is không chức năng phụ thuộc vào học sinh # (khóa chính), vì vậy này relationshipis không ở dạng chuẩn thứ hai.

    Sau hai bảng demonstratesecond bình thường mẫu:

    Sinh viên:

    Học sinh #Cố vấnADV-phòng
    1022Jones412
    4123Smith216


    Đăng ký:

    Học sinh #Lớp #
    1022101-07
    1022143-01
    1022159-02
    4123201-01
    4123211-02
    4123214-01
  4. Dạng chuẩn 3: Loại bỏ dữ liệu OnKey không phụ thuộc

    Trong ví dụ cuối, Adv-phòng (số văn phòng của cố vấn) isfunctionally phụ thuộc vào thuộc tính cố vấn. Giải pháp là để di chuyển thatattribute từ bảng sinh viên khoa bảng, như shownbelow:

    Sinh viên:

    Học sinh #Cố vấn
    1022Jones
    4123Smith


    Giảng viên:

    TênPhòngPhòng kinh doanh
    Jones41242
    Smith21642
BCNF mô hình bình thường quan hệ bình thường hóa ACC2002 ACC2003

Cảnh báo: Bài viết này được dịch tự động

Thuộc tính

ID Bài viết: 283878 - Xem lại Lần cuối: 10/09/2013 06:51:00 - Bản sửa đổi: 5.0

Microsoft Office Access 2007, Microsoft Office Access 2003, Microsoft Access 2002 Standard Edition

  • kbinfo kbdesign kbdatabase kbhowto kbmt KB283878 KbMtvi
Phản hồi