วันอาทิตย์ที่ 23 มกราคม พ.ศ. 2554

วิชาการจัดระบบเครือข่ายและการสื่อสารข้อมูลธุรกิจด้วยคอมพิวเตอร์

คำศัพท์ DHCP(Dynamic Host Configuration Protocol)  
       DHCP(Dynamic Host Configuration Protocol)    คือ โปรโตคอลที่ใช้ในการกำหนด IP Address อัตโนมัติแก่เครื่องลูกข่ายบนระบบ ที่ติดตั้ง TCP/IP สำหรับ DHCP server มีหน้าที่แจก IP ในเครือข่ายไม่ให้ซ้ำ เป็นการลดความซ้ำซ้อน เมื่อเครื่องลูกเริ่ม boot ก็จะขอ IP address, Subnet mark, หมายเลข DNS และ Default gateway   
      ขั้นตอนการเชื่อมต่อของเครื่องลูกกับ DHCP server    
        1. เครื่องลูกค้นหาเครื่อง DHCP server ในเครือข่าย โดยส่ง DHCP discover เพื่อร้องขอ IP address    
        2. DHCP server จะค้นหา IP ที่ว่างอยู่ในฐานข้อมูล แล้วส่ง DHCP offer กลังไปให้เครื่องลูก    
      3. เมื่อเครื่องลูกได้รับ IP ก็จะส่งสัญญาณตอบกลับ DHCP Request ให้เครื่องแม่ทราบ    
        4. DHCP server ส่งสัญญาณ DHCP Ack กลับไปให้เครื่องลูก เพื่อแจ้งว่าเริ่มใช้งานได้

วันอาทิตย์ที่ 9 มกราคม พ.ศ. 2554

วิชา  ฐานข้อมูลเบื้องต้นการบ้านเรื่อง การทำ Normolization ประจำวันที่  5 มกราคม  2554
1.Functional  Dependency คืออะไร แบ่งเป็นกี่ประเภท
   ตอบ 
Functional  Dependency คือ เป็นการพิจารณาโครงสร้างของแต่ละ Relation ว่ามีโครงสร้างอยู่ใน Normal Form ระดับใด จะพิจารณาจาก Functional  Dependency ซึ่งเป็นความสัมพันธ์ระหว่าง Attribute ต่างๆ ภายใน Relation กับ Attribute หรือกลุ่ม Attribute ที่ทำหน้าที่เป็น Key ของ Relation
นั้น            Functional  Dependency แบ่งออกเป็น 4 ประเภท
2.จงอธิบายความหมายของ Repeating Group พร้อมยกตัวอย่าง
   ตอบ 
Attribute ที่มีค่าของข้อมูลได้หลายค่าภายใต้ค่าของ Attribute ใด Attribute หนึ่งเช่น Attribute “DEGREE” ที่ใช้ระบุระดับการศึกษาของพนักงานแต่ละคน ซึ่งพนักงานแต่ละคน จะมีระดับการศึกษาได้หลายระดับ
3. จงอธิบายความหมายของ Transitive Dependency พร้อมยกตัวอย่าง
    ตอบ 
attribute ที่มีคุณสมบัติเป็นคีย์หลักจะสามารถระบุค่าของทุก attribute ในแต่ละ tuples
ได้ อย่างไรก็ตาม ในบาง relation อาจจะมีกรณี attribute อื่น (Nonkey attribute) ที่สามารถระบุค่าของ
attribute อื่น ๆ ใน tuples ได้ ลักษณะของความสัมพันธ์ในการระบุค่า attribute แบบนี้ เรียกว่า ความ
สัมพันธ์ระหว่างค่าของ attribute แบบนี้ว่า Transitive Dependency  เช่นรหัสนักศึกษา             รหัสสาขาวิชา
รหัสสาขาวิชา            ชื่อสาขาวิชา
            จะเห็นได้ว่า รหัสสาขาวิชา           ชื่อสาขาวิชา เป็น Transitive Dependency ซึ่งถือว่า
เป็นส่วนที่เกินมาโดยไม่จำ เป็น เนื่องจาก รหัสนักศึกษ            รหัสสาขาวิชา ก็สามารถดึงข้อมูลในส่วนของชื่อสาขาวิชาได้ ดังนั้น เราจะไม่เก็บชื่อสาขาวิชาไว้ในตารางนักศึกษา

4. จงตรวจสอบตารางต่อไปว่าอยู่ในรูปของ 1NF 2NF 3NF แล้วหรือยัง ถ้ายังจง Normolization ให้อยู่ในรูปดังกล่าว
     ตอบ
 1NF


P_ID
P_Name
E_ID
E_Name
Job_Calss
Chg_Hour
Hour
11
EAU Web Site
103
สมชาย ไม้ดี
SA
500
23.8
11
EAU Web Site
101
แท่น งามยิ่ง
Database Designer
450
19.4
11
EAU Web Site
105
ชาย ดีศรี
Database Designer
450
35.7
11
EAU Web Site
106
แม็ก ยอดยิ่ง
Programmer
400
12.6
11
EAU Web Site
102
อมร ดีศรี
SA
500
23.8
22
Bu Registration
114
สุรศักดิ์ ดีงาม
Appllcation Designer
300
24.6
22
Bu Registration
118
กมล ไม้งาม
General Support
200
45.3
22
Bu Registration
104
นาย ยิ่งยอด
SA
500
32.4
22
Bu Registration
106
แม็ก ยอดยิ่ง
Programmer
400
20
22
Bu Registration
112
ธิดา ไม้งาม
Database Designer
450
44.0
22
Bu Registration
105
ชาย ดีศรี
Database Designer
450
44.0

 2NF    d1 : P_ID, E_ID    -     P_Name
           d2: E_ID   -       E_Name,Job_Calss,Chg_Hour,Hour
PName
P_ID
E_ID
P_Name
11
103
EAU Web Site
11
101
EAU Web Site
11
105
EAU Web Site
11
106
EAU Web Site
11
102
EAU Web Site
22
114
Bu Registration
22
118
Bu Registration
22
104
Bu Registration
22
106
Bu Registration
22
112
Bu Registration
22
105
Bu Registration
EName
E_ID
E_Name
Job_Calss
Chg_Hour
Hour
103
สมชาย ไม้ดี
SA
500
23.8
101
แท่น งามยิ่ง
Database Designer
450
19.4
105
ชาย ดีศรี
Database Designer
450
35.7
106
แม็ก ยอดยิ่ง
Programmer
400
12.6
102
อมร ดีศรี
SA
500
23.8
114
สุรศักดิ์ ดีงาม
Appllcation Designer
300
24.6
118
กมล ไม้งาม
General Support
200
45.3
104
นาย ยิ่งยอด
SA
500
32.4
106
แม็ก ยอดยิ่ง
Programmer
400
20
112
ธิดา ไม้งาม
Database Designer
450
44.0
105
ชาย ดีศรี
Database Designer
450
44.0
3NF        d1 : E_ID          E_Name, Job_Calss
               d2 : Job_Calss         Chg_Hour, Hour
EJob
E_ID
E_Name
Job_Calss
103
สมชาย ไม้ดี
SA
101
แท่น งามยิ่ง
Database Designer
105
ชาย ดีศรี
Database Designer
106
แม็ก ยอดยิ่ง
Programmer
102
อมร ดีศรี
SA
114
สุรศักดิ์ ดีงาม
Appllcation Designer
118
กมล ไม้งาม
General Support
104
นาย ยิ่งยอด
SA
106
แม็ก ยอดยิ่ง
Programmer
112
ธิดา ไม้งาม
Database Designer
105
ชาย ดีศรี
Database Designer
Job Hour
Job_Calss
Chg_Hour
Hour
SA
500

23.8
32.4
Database Designer
450
19.4
35.7
44.0
Programmer
400
12.6
20
Appllcation Designer
300
24.6
General Support
200
45.3
5.จงวิเคราะห์และจัดทำ Normalization ระบบการลงทะเบียนของนักศึกษา ให้มีความซ้ำซ้อนน้อยที่สุด
   ตอบ  จากตารางจะสังเกตได้ว่านักศึกษา (
Attribute “รหัส นศ.”)1 คน สามารถลงทะเบียนรายวิชา (Attribute “ชื่อวิชา) ได้มากกว่า 1 รายวิชา ดังนั้นจึงกล่าวได้ว่า Attribute “รหัส นศ.”นี้ มีความสัมพันธ์กับ Attribute “ชื่อวิชา ในแบบ Repeating Group ส่งผลให้ Relation นี้ มีโครงสร้างที่ไม่สอดคล้องตามคุณสมบัติของ 1NF ดังนั้น จึงต้องทำรายการ Nomalization โดยการแปลง Attribute ที่อยู่ในรูป Repeating Group ให้มีคุณสมบัติ Atomicity พร้อมกับกำหนดให้ Attribute ดังกล่าวเป็น Relation Key ของ Relation ดังนั้น จึงถูกแปลงให้อยู่รูปดังนี้
1NF    ระบบการลงทะเบียน
รหัส นศ.
ภาคเรียนที่
รหัสวิชา
ชื่อวิชา
ประเภทวิชา
ชื่อประเภท
หน่วยกิต
เกรด
4501
1/45
A01
คณิตศาสตร์คอมฯ
02
ชีพบังคับ
3
F
4501
1/45
A03
ภาษาไทย
01
พื้นฐาน
3
C
4501
2/45
A01
คณิตศาสตร์คอมฯ
02
ชีพบังคับ
3
D
4501
2/45
A04
ภาษาอังกฤษ1
01
พื้นฐาน
3
D+
4502
1/45
A01
คณิตศาสตร์คอมฯ
02
ชีพบังคับ
3
B
4502
1/45
A04
ภาษาอังกฤษ1
01
พื้นฐาน
3
C
4502
2/45
A02
ระบบฐานข้อมูล
03
ชีพเลือก
3
B
4502
2/45
A05
โปรแกรมสำเร็จรูป1
02
ชีพบังคับ
3
D
4503
1/45
A06
การสื่อสารข้อมูล
01
พื้นฐาน
3
A
4503
1/45
A04
ภาษาอังกฤษ1
03
ชีพเลือก
3
C
4503
2/45
A05
โปรแกรมสำเร็จรูป1
02
ชีพบังคับ
3
D
4506
1/45
A03
ภาษาไทย
01
พื้นฐาน
3
B+
4506
1/45
A04
ภาษาอังกฤษ1
01
พื้นฐาน
3
C
2NF
            เมื่อเราพิจารณาค่าของ Attribute “รหัสวิชา” , “ภาคเรียนที่” , “ชื่อวิชา” , “ประเภทวิชา” , “ชื่อประเภท” ,    หน่วยกิตจะสังเกตเห็นว่า Tuple ที่ประกอบขึ้นจาก Attribute เหล่านี้ จะมีข้อมูลซ้ำกันเป็นชุดๆ และมีเพียง เกรดเท่านั้น ที่มีค่าแปรเปลี่ยนตามค่าของ Relation Key ดังนั้นจึงสามารถเขียนด้วย Functional Dependency
เพิ่มเติมได้ดังนี้            d1 : รหัส นศ.,รหัสวิชา            เกรด
            d2 : รหัสวิชา             ภาคเรียนที่ , ชื่อวิชา
,ประเภทวิชา, ชื่อประเภท, หน่วยกิต
            ใน d2 จะสังเกตเห็นได้ว่า Attribute ภาคเรียนที่ , “ชื่อวิชา” ,”ประเภทวิชา”, ชื่อประเภทและ หน่วยกิต เป็น Nonprime  Attribute ของ Relation ที่ไม่ได้ขึ้นอยู่กับเฉพาะ Relation Key แต่กลับขึ้นอยู่กับค่าของ  Attribute “รหัสวิชา ด้วย แสดงว่า d2  นี้ไม่เป็นไปตามคุณสมบัติข้อ 2            ดังนั้น Relation  การลงทะเบียนจึงไม่มีคุณสมบัติเป็นไปตามคุณสมบัติของ 2NF จึงต้องแยก Relation “การลงทะเบียนออกเป็น 2 Relation ตาม d1 และ d2 ดังนี้
เกรด
รหัส นศ.
รหัสวิชา
เกรด
4501
A01
F
4501
A03
C
4501
A01
D
4501
A04
D+
4502
A01
B
4502
A04
C
4502
A02
B
4502
A05
D
4503
A06
A
4503
A04
C
4503
A05
D
4506
A03
B+
4506
A04
C
วิชา
รหัสวิชา
ภาคเรียนที่
ชื่อวิชา
ประเภทวิชา
ชื่อประเภท
หน่วยกิต
A01
1/45
คณิตศาสตร์คอมฯ
02
ชีพบังคับ
3
A03
1/45
ภาษาไทย
01
พื้นฐาน
3
A01
2/45
คณิตศาสตร์คอมฯ
02
ชีพบังคับ
3
A04
2/45
ภาษาอังกฤษ1
01
พื้นฐาน
3
A01
1/45
คณิตศาสตร์คอมฯ
02
ชีพบังคับ
3
A04
1/45
ภาษาอังกฤษ1
01
พื้นฐาน
3
A02
2/45
ระบบฐานข้อมูล
03
ชีพเลือก
3
A05
2/45
โปรแกรมสำเร็จรูป1
02
ชีพบังคับ
3
A06
1/45
การสื่อสารข้อมูล
01
พื้นฐาน
3
A04
1/45
ภาษาอังกฤษ1
03
ชีพเลือก
3
A05
2/45
โปรแกรมสำเร็จรูป1
02
ชีพบังคับ
3
A03
1/45
ภาษาไทย
01
พื้นฐาน
3
A04
1/45
ภาษาอังกฤษ1
01
พื้นฐาน
3
3NF
            จาก Relation “วิชาถึงแม้ว่าจะมีโครงสร้างเป็นไปตามคุณสมบัติของ 2NF แต่จะเห็นว่า ค่าของว่า Attribute  ประเภทวิชา”, ชื่อประเภทและ หน่วยกิต ยังปรากฏข้อมูลที่มีค่าซ้ำกันอยู่เป็นคู่ๆ หรือกล่าวอีกนัยหนึ่งทั้ง 2 Attribute สามารถระบุค่าระหว่างกันได้  ดังนั้นเราจึงต้องทำการแยก  Attribute ได้แก่ Attribute ชื่อวิชาและ  ประเภทวิชา ดังนี้
ชื่อวิชา 2
รหัสวิชา
ภาคเรียนที่
ชื่อวิชา
A01
1/45
คณิตศาสตร์คอมฯ
A03
1/45
ภาษาไทย
A01
2/45
คณิตศาสตร์คอมฯ
A04
2/45
ภาษาอังกฤษ1
A01
1/45
คณิตศาสตร์คอมฯ
A04
1/45
ภาษาอังกฤษ1
A02
2/45
ระบบฐานข้อมูล
A05
2/45
โปรแกรมสำเร็จรูป1
A06
1/45
การสื่อสารข้อมูล
A04
1/45
ภาษาอังกฤษ1
A05
2/45
โปรแกรมสำเร็จรูป1
A03
1/45
ภาษาไทย
A04
1/45
ภาษาอังกฤษ1
ประเภทวิชา
ชื่อวิชา
ประเภทวิชา
ชื่อประเภท
หน่วยกิต
คณิตศาสตร์คอมฯ
02
ชีพบังคับ
3
ภาษาไทย
01
พื้นฐาน
3
ภาษาอังกฤษ1
01
พื้นฐาน
3
ระบบฐานข้อมูล
03
ชีพเลือก
3
โปรแกรมสำเร็จรูป1
02
ชีพบังคับ
3
การสื่อสารข้อมูล
01
พื้นฐาน
3