الجمعة، 3 يناير 2014

اساسيات قواعد البيانات - تطبيع المعيارية الثانية Database Basic SQL - Second Normal Form 2NF

اساسيات قواعد البيانات - تطبيع المعيارية الثانية
 Database Basic SQL - Second Normal Form 2NF
اساسيات قواعد البيانات - تطبيع المعيارية الثانية Database Basic SQL - Second Normal Form 2NF

نموذج تطبيع المعيارية الثانية

نموذج تطبيع المعيارية الثانية:-

1- إزالة البيانات المتكرارة وفصلها في جدول.
2- ربط الجدولين بعلاقة مستخدما المفتاح الاجنبي.

في مثالنا التالي نفترض وجود جدول طلبات الزبائن ويحتوي على الاعمدة التالية:-
customer ID, customer name, order ID ,order detail, date of purchase:



CREATE TABLE CUSTOMERS(
CUST_ID INT NOT NULL,
CUST_NAME VARCHAR (20) NOT NULL,
ORDER_ID INT NOT NULL,
ORDER_DETAIL VARCHAR (20) NOT NULL,
SALE_DATE DATETIME,
PRIMARY KEY (CUST_ID, ORDER_ID)
);

لو افترضنا بوجود زبزن اسمه محمد وله رقم فنجد أن كلما طلب محمد طلبية فأن بياناته الاساسية كاسمه ورقمه يتكرر مع كل طلبية وحيث ان رقم الزبون هو مفتاح أساسي فيجب ان لا يتكرار ولذلك نجد أنه يجب فصل بيانات الجدول الى التالي كي نستبعد التكرار الغير مسوغ.فالصيغة التطبيع المعيارية الثانية تنص على ازالة اي تكرار في قاعدة تطبيع المعيارية الاولى.

الخطوة الاولى في المعيارية الثانية للمثال السابق فننشاء أولا جدول الزبائن.


CREATE TABLE CUSTOMERS(
       CUST_ID    INT              NOT NULL,
       CUST_NAME VARCHAR (20)      NOT NULL,
       PRIMARY KEY (CUST_ID)
);

الخطوة الثانية في المعيارية الثانية. ننشأ جدول الطلبات.

CREATE TABLE ORDERS(
       ORDER_ID   INT              NOT NULL,
       ORDER_DETAIL VARCHAR (20)  NOT NULL,
       PRIMARY KEY (ORDER_ID)
);

الخطوة الثالثة في المعيارية الثانية ربط الجدولين بمفتاح أجنبي في جدول وسيط.

لماذا لم يتم وضع المفتاح الاجنبي لجدول الزبائن في جدول الطلبات.هنا ستصبح العلاقة بين الجدولين متعدد الى متعدد وقاعدة البيانات  لاتسمح بوجود علاقة متعدد الى متعدد.سنذكر العلاقات لاحقا.

CREATE TABLE CUSTMERORDERS(
       CUST_ID    INT              NOT NULL,
       ORDER_ID   INT              NOT NULL,
       SALE_DATE  DATETIME,
       PRIMARY KEY (CUST_ID, ORDER_ID)
);
وبذلك تكون طبقنا الخطوات التطبيع المعيارية الثانية.






Ahmed Ata Almahallawi
Freelancer
IT
IT Help Desk,
SEO experience,PHP,C#,ASPX,SQL
Al alami st
Gaza -jabaliaGaza Strip
Palestine
Marital Status: Single 
DOB: 05/10/1984
6/1/2014

التسميات: