Mô tả của vấn đề cơ bản bình thường hoá cơ sở dữ liệu Access 2000

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để 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 ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại 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, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. 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. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:209534
Bài viết này đã được lưu trữ. Bài viết được cung cấp "nguyên trạng" và sẽ không còn được cập nhật nữa.
Novice: Đòi hỏi kiến thức về giao diện người dùng trên đĩa đơn người dùng máy vi tính.

Đối với một phiên bản Microsoft truy cập 97 của bài viết này, xem 100139.
Cho một truy cập Microsoft 2002 Phiên bản của bài viết này, xem 283878.
TÓM TẮT
Bài viết này giải thích thuật ngữ bình thường hoá cơ sở dữ liệu Đối với 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ế 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 căn bản của bình thường hoá cơ sở dữ liệu. Để xem WebCast này, vui lòng truy cập sau đây Web site của Microsoft: Để có thêm thông tin về chủ đề này trong một phiên bản cũ của truy cập, nhấp vào bài viết sau đây số để xem bài viết trong cơ sở kiến thức Microsoft:
100139Khái niệm cơ bản bình thường hoá cơ sở dữ liệu
THÔNG TIN THÊM

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

Bình thường là quá trình tổ chức các dữ liệu trong cơ sở dữ liệu. Điều này bao gồm việc tạo ra bảng và thiết lập các mối quan hệ giữa những người bảng theo để quy tắc được thiết kế để bảo vệ dữ liệu và để làm cho các 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 dung lượng đĩa và tạo ra những vấn đề bảo trì. Nếu dữ liệu mà tồn tại ở nhiều hơn một nơi phải được thay đổi, các dữ liệu phải 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 dễ dàng hơn để thực hiện nếu dữ liệu đó được lưu trữ chỉ trong bảng khách hàng và không có nơi nào khác trong cơ sở dữ liệu.

Điều gì sẽ là một "không phù hợp phụ thuộc"? Trong khi đó là trực quan cho một người sử dụng để tìm trong bảng khách hàng cho địa chỉ của một khách hàng cụ thể, nó không thể làm cho tinh thần để tìm có mức 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 liên quan đến, hoặc phụ thuộc vào, nhân viên và do đó nên được chuyển đến bảng nhân viên. Phụ thuộc không phù hợp có thể làm cho dữ liệu khó khăn để truy cập vì đường dẫn đến tìm thấy các dữ liệu có thể bị thiếu hoặc bị hỏng.

Có một vài quy tắc cho bình thường hoá cơ sở dữ liệu. Mỗi quy tắc được gọi là một "hình dạng thông thường." Nếu các quy tắc đầu tiên quan sát, 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 là người đầu tiên ba quy tắc được áp dụng, cơ sở dữ liệu được coi là trong bình "thứ ba thường hình thức." Mặc dù các mức bình thường là hình thức có thể, thứ ba 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 chính thức và thông số kỹ thuật, tình huống thế giới thực làm không phải luôn luôn cho phép đối với việc tuân thủ hoàn hảo. Nói chung, bình thường đòi hỏi phải bổ sung bảng biểu và một số khách hàng tìm thấy điều này rườm rà. Nếu bạn quyết định vi phạm một trong các quy tắc ba đầu tiên của bình thường hoá, đảm bảo rằng các ứng dụng dự kiến bất kỳ vấn đề nào mà có thể xảy ra, chẳng hạn như dữ liệu dự phòng và phụ thuộc không phù hợp.

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

Đầu tiên hình thức bình thường

  • Loại bỏ các 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 bộ 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 khóa chính.
Không sử dụng nhiều lĩnh vực trong một bảng duy nhất để lưu trữ tương tự dữ liệu. Ví dụ, để theo dõi một mục hàng tồn kho có thể đến từ hai tốt nguồn, một hồ sơ tồn kho có thể chứa các lĩnh vực cho nhà bán Code 1 và nhà cung cấp Mã 2.

Những gì sẽ xảy ra khi bạn thêm một người bán hàng thứ ba? Thêm một lĩnh vực là 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 suốt chứa một số năng động của nhà cung cấp. Thay vào đó, đặt tất cả các nhà bán thông tin ở 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 với nhà cung cấp với một mã số key, hoặc nhà cung cấp để hàng tồn kho với một chìa khóa 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ị mà áp dụng cho nhiều 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 là một bảng tiểu học (phím một hợp chất, nếu cần thiết). Ví dụ, hãy xem xét một khách hàng Địa chỉ trong một hệ thống kế toán. Địa chỉ là cần thiết bởi khách hàng bảng, nhưng cũng bởi những đơn đặt hàng, vận chuyển, hoá đơn, Accounts Receivable, và Các bộ sưu tập bàn. Thay vì của lưu trữ địa chỉ của khách hàng như là một riêng biệt mục nhập trong mỗi của các bảng, lưu trữ nó ở một nơi, hoặc là ở khách hàng bảng hoặc một địa chỉ riêng bảng.

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

  • Loại bỏ các lĩnh vực không phụ thuộc vào quan trọng.
Các giá trị trong một kỷ lục mà không phải là một phần của hồ sơ đó khóa làm không thuộc trong bảng. Nói chung, bất kỳ thời gian nội dung của một nhóm các lĩnh vực 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 những các lĩnh vực trong một bảng riêng biệt.

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

Ngoại lệ: Tôn trọng các hình thức bình thường thứ ba, trong khi về mặt lý thuyết hấp dẫn, không luôn luôn thực tế. Nếu bạn có một khách hàng bảng và bạn muốn loại bỏ tất cả có thể interfield quan hệ phụ thuộc, bạn phải tạo bảng riêng biệt cho các thành phố, mã bưu điện, bán hàng đại diện, các lớp học khách hàng và bất kỳ yếu tố khác có thể được nhân đôi trong nhiều hồ sơ. Theo lý thuyết, bình thường hoá 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 để hình dạng thông thường thứ ba chỉ áp dụng cho dữ liệu đó thay đổi thường xuyên. Nếu một số lĩnh vực phụ thuộc còn lại, 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ả các lĩnh vực liên quan khi bất kỳ ai được thay đổi.

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

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

Bình thường hoá một ví dụ bảng

Các bước chứng minh quá trình bình thường hoá một hư cấu sinh viên bảng.
  1. Bảng unnormalized:
    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: Các không có lặp đi lặp lại nhóm

    Bảng cần phải có kích thước chỉ có hai. Kể từ khi một học sinh có một số các lớp học, các các lớp học nên được liệt kê trong một bảng riêng biệt. Các lĩnh vực Class1, Class2 và Class3 trong các hồ sơ ở trên là dấu hiệu của sự cố thiết kế.

    Bảng tính thường xuyên 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 đề này là với mối quan hệ một nhiều, không đặt một bên và các mặt nhiều trong cùng một bảng. Thay vào đó, tạo ra một bảng trong đầu tiên bình thường hình thức bằng cách loại bỏ nhóm lặp đi lặp lại (hạng #), như được hiển thị 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

    Chú ý các lớp # nhiều giá trị cho mỗi học sinh # giá trị trong bảng ở trên. Lớp # không phải là chức năng phụ thuộc vào học sinh # (khóa chính), vì thế this mối quan hệ không phải là ở hình thức bình thường thứ hai.

    Hai bảng sau đây chứng minh Thứ hai hình dạng thông thường:

    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. Thứ ba hình thức bình thường: Loại bỏ dữ liệu không phụ thuộc vào Key

    Trong ví dụ cuối, Adv-phòng (số của cố vấn văn phòng) là chức năng phụ thuộc vào các thuộc tính cố vấn. Giải pháp là để di chuyển mà thuộc tính từ sinh viên bảng để bàn giảng viên, như được hiển thị dưới đây:

    Sinh viên

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

    Giảng viên

    TênPhòngDept
    Jones41242
    Smith21642
THAM KHẢO
Ahlo, Hamilton M., Randy Brown và Peter Colclough. FoxPro 2: Một nhà phát triển hướng dẫn: chuyên gia hướng dẫn cho sức mạnh công nghiệp lập trình. John Wiley & con trai, tháng 10 năm 1991. Các trang 220-225.

Jennings, Roger. Bằng cách sử dụng truy cập 1.1 cho Windows. Que Corporation, tháng 7 năm 1993. Các trang 799-800.
BCNF mô hình quan hệ bình thường bình thường hóa

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

Thuộc tính

ID Bài viết: 209534 - Xem lại Lần cuối: 12/05/2015 11:08:27 - Bản sửa đổi: 3.0

Microsoft Access 2000 Standard Edition

  • kbnosurvey kbarchive kbdatabase kbdesign kbinfo kbusage kbmt KB209534 KbMtvi
Phản hồi