รูปแบบการสร้างความสัมพันธ์ระหว่างตารางในฐานข้อมูลได้ 4 รูปแบบ ดังนี้
- ความสัมพันธ์แบบหนึ่งต่อหนึ่ง (One-to-One) เรคคอร์ดหรือข้อมูลในตาราง A หรือตารางที่ 1 จะมีความสัมพันธ์หรือเชื่อมต่อหรือจับคู่กับ 1 เรคคอร์ดในตาราง B เท่านั้น จะจับมากกว่า 1 เรคคอร์ดไม่ได้
- ความสัมพันธ์แบบหนึ่งต่อกลุ่ม (One-to-Many) เรคคอร์ดที่ 1 ในตาราง A สามารถจับคู่ได้มากกว่า 1 เรคคอร์ดในตาราง B สมมุติในตาราง A มีเรคคอร์ดที่ 1 สามารถจับคู่กับตาราง Bในเรคคอร์ดที่ 1 เรคคอร์ดที่ 2 ได้
- ความสัมพันธ์แบบกลุ่มต่อหนึ่ง (Many-to-One) จะตรงข้ามกับความสัมพันธ์แบบหนึ่งต่อกลุ่ม (One-to-Many) หลายๆ เรคคอร์ดในตาราง A (เรคคอร์ดที่ 1 2 3 )สามารถจับคู่กับเรคคอร์ดที่ 1 ในตาราง B ได้ และ เรคคอร์ดที่ 4 5 6 7 สามารถจับคู่กับ เรคคอร์ดที่ 2 ในตาราง B ได้
- ความสัมพันธ์แบบกลุ่มต่อกลุ่ม (Many-to-Many) หลาย ๆ เรคคอร์ดในตาราง A สามารถจับคู่หรือมีความสัมพันธ์ได้กับหลาย ๆ เรคคอร์ดในตาราง B เช่น เรคคอร์ดที่ 1 ของตาราง A สามารถจับคู่ได้กับเรคคอร์ดที่ 2 3 4 ของตาราง B เรคคอร์ดที่ 2 ในตาราง A สามารถจับคู่ได้กับเรคคอร์ดที่ 2 3 4 ในตาราง B ได้เช่นเดียวกัน สามารถจับคู่ซ้ำกันได้
- ถ้าตารางมีความสัมพันธ์แบบหนึ่งต่อหนึ่งจะต้องใช้วิธีการเชื่อมตารางแบบ Join ในการเชื่อมตารางสองตารางเข้าด้วยกัน
- ถ้าตารางมีความสัมพันธ์แบบหนึ่งต่อกลุ่มจะต้องใช้วิธีการเชื่อมตารางแบบ Relate ในการเชื่อมตาราง
- ถ้าตารางมีความสัมพันธ์แบบกลุ่มต่อหนึ่งจะต้องใช้วิธีการเชื่อมตารางแบบ Join ในการเชื่อมตาราง
- ถ้าตารางมีความสัมพันธ์แบบกลุ่มต่อกลุ่มจะต้องใช้วิธีการเชื่อมตารางแบบ Relate ในการเชื่อมตาราง
แต่ถ้าใช้วิธีการเชื่อมตารางไม่ตรงกับความสัมพันธ์ของตาราง
ข้อมูลในเรคคอร์ดนั้นจะหายไปเพราะรูปแบบในการเชื่อมตารางผิด เพราะหลักการของการ Join จะใช้เรคคอร์ดแรกมาเชื่อมกัน แต่ถ้าไปใช้วิธีการ Relate เรคคอร์ดที่เหลือก็จะหายไป
โดยการเชื่อมตารางไม่ว่าจะใช้วิธีการ Join หรือ Relate จะเป็นการเชื่อมตารางแบบชั่วคราวหรือเป็นการรวมตารางแบบชั่วคราวเท่านั้น
พอปิดข้อมูลไปแล้วข้อมูลที่เชื่อมจะหายไป เพราะมันไม่ติดกับตัวตารางที่เอามารวม
เพราะฉะนั้นถ้าต้องการจะเก็บตัวข้อมูลไว้ก็ต้อง Save ตัวข้อมูลไว้ โดยการ Export
Data ก็จะได้เป็น Shapefile อันใหม่ขึ้นมา
แต่ถ้าไม่ต้องการจะวิเคราะห์ข้อมูลก็ไม่จำเป็นต้อง Export Data ออกไป
-
การ Join1. เปิดโปรแกรม ArcMap10 ขึ้นมาแล้วไปที่ Folder RTArcGIS >>Data&Program และไปที่ Folder Prachinburi จากนั้นไปที่ Folder SOIL_GRP (เป็นข้อมูลชุดดิน) แล้วเปิดข้อมูลที่ชื่อว่า SOIL_GRP เป็นข้อมูลPolygon ที่แสดงชุดดินหรือกลุ่มชุดดิน
2. จากนั้นทำการเปิด AttributeSOIL_GRP
คลิกขวาที่ SOIL_GRP >>
OpenAttribute Table
จะเห็นได้ว่าในข้อมูลSOIL_GRP ที่เป็น Shapefile ไม่มีคำอธิบาย แต่ถ้าเราต้องการจะวิเคราะห์หรือนำไปทำแผนที่แสดงชุดดินในจังหวัดปราจีนบุรี
เราจำเป็นจะต้องนำข้อมูลจากข้างนอกหรือตารางข้างนอกเข้ามาเชื่อมกับตารางนี้ เพื่อที่จะให้รู้ว่าเรคคอร์ดนั้น ๆ คือ ชุดดินชุดที่เท่าไหร่หรือชุดดินชื่อว่าอะไร
ซึ่งในตารางที่อยู่ในSOIL_GRP จะมีข้อมูลอยู่หนึ่งข้อมูลที่เก็บคำอธิบายของชุดดินไว้
คือ ตารางที่ชื่อว่า SOILCOLDE
3. ทำการเปิดข้อมูล SOILCOLDE แล้วทำการ Open Attribute
จากการเปิดข้อมูล SOILCOLDE จะเห็นได้ว่าในตัว SOILCOLDE จะมีคำอธิบายของชุดดิน
เราจะนำตาราง SOILCOLDE เข้าไปรวมกับตาราง SOIL_GRP เพื่อจะทำให้ Shapefile มีข้อมูลชุดดินนี้แล้วนำไปวิเคราะห์ข้อมูลต่อ ซึ่งความสัมพันธ์ของตาราง SOIL_GRP และตาราง SOILCOLDE เป็นแบบหนึ่งต่อหนึ่ง (One-to-One) คือ 1ID จะสามารถจับคู่หรือมีคำอธิบาย 1 คำอธิบายเท่านั้น
หลักการต่อไปในการเชื่อมตารางคือ field ที่จะนำมาเชื่อม เพราะในการเชื่อมตารางจำเป็นจะต้องใช้ field ทั้ง 2 ตารางที่เก็บข้อมูลเดียวกันไว้มาทำการเชื่อม
โดยข้อมูลในตารางหรือใน field ต้องเป็นข้อมูลที่เก็บข้อมูลเหมือนกัน
ประเภทเดียวกัน ถ้าในตารางไม่มีข้อมูลหรือ field ประเภทเดียวกันจะนำมา Join
หรือ Relate กันไม่ได้ซึ่งในที่นี้คือ SOIL_ID เราจึงใช้ SOIL_ID มาเป็นตัวเชื่อม
การรวมตาราง
ตารางเป็นแบบหนึ่งต่อหนึ่งจะใช้วิธีการ Join และในการ Join ต้องมีตารางตั้งต้น เนื่องจากเราต้องการรู้ว่า SOIL_GRP หรือว่าใน Polygon
แต่ละ Polygon คือ ชุดดินชื่อว่าอะไร
เพราะฉะนั้นจะใช้ SOIL_GRP เป็นตารางตั้งต้นในการ Join แล้วนำ SOILCOLDE เข้าไปร่วม
4. ทำการเปิดตาราง SOILCOLDE จากนั้นไปที่ Table Options แล้วไปที่คำสั่ง Joins and Relates >> Join
จะปรากฏหน้าต่าง Join
Data ขึ้นมา แล้วไปตั้งค่าดังต่อไปนี้
- ต้องการจะใช้ field ไหนใน SOIL_GRP ใช้ในการ Join ซึ่งเราเลือก SOIL_ID
- ต้องการจะนำไปเชื่อมกับตารางตัวไหน เนื่องจากเราเปิดตารางเพียงตารางเดียว ก็คือ SOILDCODE จึงปรากฏข้อมูลขึ้นมาให้โดยอัตโนมัติ
- จะนำ field ไหนใน SOILDCODE มาเป็นตัวเชื่อมเลือก SOIL_ID
ในตารางของ SOIL_GRP จะมี field ของตาราง SOILDCODE เข้ามารวมอยู่ด้วย ก็จะรู้ว่า Polygon แต่ละ Polygon มีชุดดินชื่อว่าอะไร ถ้าเราต้องการจะเก็บข้อมูลนี้ไว้ให้อยู่ใน Shapefile ของ SOIL_GRP ก็คือข้อมูลที่เราทำการเชื่อม ก็ต้องทำการ Export ข้อมูล
โดยคลิกขวาที่ SOIL_GRP >> Data >> Export Data ก็จะได้
Shapefile ขึ้นมาใหม่
แต่ถ้าเราไม่ต้องการจะใช้ข้อมูลต่อและต้องการที่จะลบข้อมูลออกก็ทำการ Delete หรือ Remove Join ออกโดยให้ไปที่คำสั่ง Table
Options แล้วไปที่คำสั่ง Join and Relate >> Remove Join(s) >> SOIL _GRP ข้อมูลที่เร าJoin ก็จะหายไป
การ Relate
1. ไปที่ Folder LAB 05 แล้วนำข้อมูลขอบเขต AMPHOE ออกมาที่ Display area
แล้ว Open Attribute Table ดูว่าข้อมูลในแต่ละอำเภอมีข้อมูลอะไรเก็บอยู่บ้าง
ซึ่งข้อมูลในนี้มีไม่ครบ
เราจึงต้องนำตารางข้างนอกมาทำการเชื่อมกับตารางอำเภอนี้ เพื่อที่จะได้ข้อมูลหมู่บ้าน ข้อมูลที่เก็บตารางหมู่บ้านอยู่ในตารางที่ชื่อว่า
Village_Relate
2. เปิดข้อมูล Village_Relate
3. คลิกขวาที่ Village ในช่อง Table Of Contents เลือก Open เพื่อเปิดดูข้อมูลในตาราง
เมื่อเปิดตาราง Village_Relate จะพบว่ามีข้อมูลที่เราต้องการ ตารางเป็นแบบหนึ่งต่อกลุ่ม
ใช้ field AMP_CODE ในการเชื่อมเพราะมีความผิดพลาดน้อยกว่า AMP_NAME ซึ่งเป็นตัวหนังสือ ใช้ AMPHOE เป็นตัวตั้งต้นในการ
Relate เพราะเราต้องการรู้ว่าในแต่ละอำเภอมีกี่หมู่บ้าน และหมู่บ้านอะไรบ้าง
4. เปิด Attribute ของ AMPHOE แล้วไปที่ Table Options >> Joins and Relates >> Relate
จะปรากฏหน้าต่าง Relate แล้วตั้งค่า ดังต่อไปนี้
- ต้องการจะใช้ fieldไหนใช้ในการ Relate ซึ่งเราเลือก AMP_CODE
- ต้องการจะนำไปเชื่อมกับตารางตัวไหน เนื่องจากเราเปิดตารางเพียงตารางเดียว ก็คือ Village_Relate จึงปรากฏข้อมูลขึ้นมาให้โดยอัตโนมัติ
- จะนำfieldไหนมาเป็นตัวเชื่อม เลือก AMP_CODE
- ตั้งชื่อในการRelate
หลังจากตั้งค่าเรียบร้อยแล้ว เราจะไม่เห็นการเปลี่ยนแปลงจากตัวตาราง
ซึ่งในการดูผลจาก Relate มีวิธีมากกว่าการ Join โดยถ้าเราต้องการอยากจะรู้ว่าในอำเภอนั้น ๆ มีหมู่บ้านอะไรบ้างหรือมีกี่หมู่บ้าน
ให้เรานำเมาส์ไปคลิกไฮไลต์ที่เร็คคอร์ดของอำเภอที่ต้องการจะรู้
5. ทำไฮไลต์ที่เร็คคอร์ด จากนั้นไปที่ Table
Options >> Relate Tables แล้วก็เลือก Relate1 ที่เราทำการ Relate ไว้
เราก็จะได้ข้อมูลหมู่บ้านที่อยู่ในอำเภอเมืองมา
กระบวนการทางสถิติ (Attribute statistic function)
1. Open Attribute ของ AMPHOE ใน lab 05
Field ที่จะนำมาใช้ในการคำนวณจะต้องเป็น field ตัวเลขเท่านั้น โดยเราต้องการที่จะใช้ field ไหนไปวิเคราะห์ก็ให้ไปคลิกที่ field นั้น
2. ถ้าเราต้องการ field Area ไปคำนวณก็ให้คลิกที่ field Area ให้ขึ้นไฮไลต์
โดยค่าสถิติอย่างง่ายที่ปรากฏบนหน้าต่างจะมีอยู่
5 และทางขวามือก็จะแสดงภาพกราฟอย่างง่ายซึ่งกราฟนี้จะไม่สามารถแก้ไขได้
การสร้างกราฟ
1. ไปที่ View >> Graphs >> Create…
ค่าแรกที่ต้องเซตคือ Graph type ซึ่ง Graph type จะเป็นการเลือกรูปแบบของ Graph ส่วนตัว Layer/Table ก็จะเป็นข้อมูลที่เราจะสร้างกราฟในที่นี้ก็คือข้อมูล AMPHOE จากนั้น Value field ก็คือค่า field ที่จะนำมาใช้ในการสร้างกราฟ
1. ไปที่ View >> Graphs >> Create…
2. จากนั้นจะปรากฏหน้าต่าง
Create
Graphs Wizard ขึ้นมา แล้วตั้งค่า ดังต่อไปนี้
ค่าแรกที่ต้องเซตคือ Graph type ซึ่ง Graph type จะเป็นการเลือกรูปแบบของ Graph ส่วนตัว Layer/Table ก็จะเป็นข้อมูลที่เราจะสร้างกราฟในที่นี้ก็คือข้อมูล AMPHOE จากนั้น Value field ก็คือค่า field ที่จะนำมาใช้ในการสร้างกราฟ
คลิก Next >> Finish
ก็จะได้กราฟดังรูป
3. ถ้าเราต้องการจะเปลี่ยนสี
เปลี่ยนชื่อกราฟ หรือคำอธิบายของกราฟ ให้คลิกขวาที่กราฟแล้วเลือก Advanced Properties
จากนั้นจะปรากฏหน้าต่าง Editing
ขึ้นมา ถ้าต้องการจะเปลี่ยนชื่อ ให้คลิกที่ Titles ก็จะขึ้นช่องText
ให้พิมพ์ชื่อใส่ลงไปได้เลย
ถ้าต้องการจะแก้ไขแกนให้ไปที่ Axis
ถ้าต้องการจะเปลี่ยนชื่อให้ไปที่ Title และถ้าต้องการเปลี่ยนสีเปลี่ยน Font ให้ไปที่ Format >>Text
ในช่อง Axes เป็นช่องให้เลือกแกนของกราฟ ในที่นี้เลือกแกนตั้งฝั่งด้านซ้าย Left Axis
ส่วนแกนแนวนอนก็คือ Bottom
Axis ถ้าต้องการจะเปลี่ยนชื่อให้ไปที่ Title และถ้าต้องการเปลี่ยนสีเปลี่ยน Font ให้ไปที่ Format >>Text
การเปลี่ยนสีหรือรูปแบบของกราฟ
1. ไปที่ Series
>> Vertical bar ช่อง Style
คือรูปแบบของกราฟ เช่น แบบพีระมิด ถ้าต้องการเปลี่ยนสีให้คลิกที่ Color Each แล้วทำการเปลี่ยนสี
จะปรากฏ ดังรูป
3. เมื่อต้องการจะนำกราฟที่ทำเสร็จแล้วไปใช้งาน คลิกขวาที่กราฟแล้วเลือก Export…
จะขึ้นหน้าต่าง Export Dialog ขึ้นมา ถ้าต้องการจะ Copy ไปใส่ Word ให้ไปคลิกที่ Copy แล้วเปิด Word ขึ้นมา แล้วก็วางลงในWord
3. เมื่อต้องการจะนำกราฟที่ทำเสร็จแล้วไปใช้งาน คลิกขวาที่กราฟแล้วเลือก Export…
จะขึ้นหน้าต่าง Export Dialog ขึ้นมา ถ้าต้องการจะ Copy ไปใส่ Word ให้ไปคลิกที่ Copy แล้วเปิด Word ขึ้นมา แล้วก็วางลงในWord
4. ถ้าต้องการจะ Save ก็ต้องเลือกรูปแบบของตัว Format ก่อนว่าต้องการแบบไหน แล้วก็กด Save ถ้าต้องการจะส่ง E-mail ก็เลือก Send…
การสร้างรายงาน
1. ไปที่ View >> Reports >> Create Report…
จากนั้นจะปรากฏหน้าต่าง Report Wizard ขึ้นมา
2. ที่ช่อง Layer/Table เป็นช่องแสดง Field ที่สามารถนำมาทำ Report ได้ ช่อง Available Fields คือ Field ที่เราต้องการที่จะเลือกมาทำ Report โดยเลือกมาที่ช่อง Report Fields จากนั้นก็กด Next
จะปรากฏหน้าต่างแสดงการจัดกลุ่มข้อมูล แต่ถ้าไม่ต้องการก็กด Next
ตั้งชื่อ Report แล้วก็กด Finish
การสร้างรายงาน
1. ไปที่ View >> Reports >> Create Report…
2. ที่ช่อง Layer/Table เป็นช่องแสดง Field ที่สามารถนำมาทำ Report ได้ ช่อง Available Fields คือ Field ที่เราต้องการที่จะเลือกมาทำ Report โดยเลือกมาที่ช่อง Report Fields จากนั้นก็กด Next
จะปรากฏหน้าต่างแสดงการจัดกลุ่มข้อมูล แต่ถ้าไม่ต้องการก็กด Next
จะปรากฏหน้าต่างการเรียงลำดับข้อมูล
ซึ่งต้องเลือก Field ที่จะใช้จัดลำดับข้อมูล Ascending คือ การเรียงจากน้อยไปมาก ส่วน Descending คือ การเรียงจากมากไปน้อย ถ้าไม่ต้องการเลือกก็กด Next
จะปรากฏหน้าต่างการ Report จากนั้นเลือก Next
ก็จะพบหน้าต่าง Style การ Report แล้วเลือก Next
ตั้งชื่อ Report แล้วก็กด Finish
จะปรากฏ ดังรูป
ซึ่งสามารถทำการปรับแก้ได้โดยไปคลิกที่ Edit สามารถปรับแก้ได้ตามต้องการ
เมื่อทำการแก้ไขข้อมูลเสร็จแล้วก็ต้อง Run Report กลับมาสู่หน้าเดิมก็ไปคลิกที่ Run Report
การนำ Report ไปใช้งาน จะมีลักษณะเหมือนกับการนำตารางไปใช้งาน ถ้าต้องการจะ Copy ไปใช้งานให้คลิกที่สัญลักษณ์ Copy
ถ้าต้องการจะ Save ให้เลือก Save report output to file นามสกุลของ Report จากตัว ArcMap คือ .RDF
ถ้าต้องการส่ง Report ไปยัง Layout ตอนทำแผนที่ ให้เลือก Add report to ArcMap Layout
การ Report ไปยัง Layout
ซึ่งสามารถทำการปรับแก้ได้โดยไปคลิกที่ Edit สามารถปรับแก้ได้ตามต้องการ
เมื่อทำการแก้ไขข้อมูลเสร็จแล้วก็ต้อง Run Report กลับมาสู่หน้าเดิมก็ไปคลิกที่ Run Report
การนำ Report ไปใช้งาน จะมีลักษณะเหมือนกับการนำตารางไปใช้งาน ถ้าต้องการจะ Copy ไปใช้งานให้คลิกที่สัญลักษณ์ Copy
ถ้าต้องการจะ Save ให้เลือก Save report output to file นามสกุลของ Report จากตัว ArcMap คือ .RDF
ถ้าต้องการส่ง Report ไปยัง Layout ตอนทำแผนที่ ให้เลือก Add report to ArcMap Layout
การ Report ไปยัง Layout

ไม่มีความคิดเห็น:
แสดงความคิดเห็น