ORM: Object Relational Mapping (โออาร์เอ็ม: อ็อบเจค รีเรชั่นนอล แม็ปปิ้ง) คืออะไร

SQL Knowledge ทั้ง sql มาตรฐาน หลักการออกแบบฐานข้อมูล ความสัมพันธ์ของ ตาราง Mysql , PGSQL, Oracle, MSSQL

Moderator: mindphp, ผู้ดูแลกระดาน

ภาพประจำตัวสมาชิก
md040
PHP Super Member
PHP Super Member
โพสต์: 265
ลงทะเบียนเมื่อ: 07/11/2016 10:37 am

ORM: Object Relational Mapping (โออาร์เอ็ม: อ็อบเจค รีเรชั่นนอล แม็ปปิ้ง) คืออะไร

โพสต์โดย md040 » 26/11/2016 10:44 am

800px-Capabilities1-2.png
800px-Capabilities1-2.png (113.21 KiB) เปิดดู 76 ครั้ง

ในอดีตการพัฒนาระบบส่วนใหญ่จะใช้ร่วมกับฐานข้อมูลที่รองรับ SQL (เอสคิวเเอล) เพราะ SQL (เอสคิวเเอล) เป็นภาษาที่ได้รับความนิยมเป็นอย่างมาก ฐานข้อมูลส่วนใหญ่จะรองรับ SQL (เอสคิวเเอล) เพราะง่ายต่อการเข้าถึงข้อมูล และการเรียนรู้ เรียนรู้ภาษา SQL (เอสคิวเเอล) ครั้งเดียวก็สามารถนำไปใช้ได้กับหลายๆ ระบบ แต่ต่อมามีการพัฒนาระบบหรือแอพพลิเคชั่นเป็นแบบ OOP (โอโอพี) ซึ่งเป็นการเขียนโปรแกรมเชิงวัตถุซึ่งลดระยะเวลาในการพัฒนาโปรแกรมลงได้ และสามารถพัฒนาต่อยอดได้ง่าย แต่การเชื่อมต่อกับฐานข้อมูลแบบ SQL (เอสคิวเเอล) นั้นเป็นเรื่องยากเพราะต้องแปลงข้อมูลที่อยู่ในรูปวัตถุ หรือ Object (อ็อบเจค) ให้อยู่ในรูปแบบของ SQL (เอสคิวเเอล) ก่อนแล้วค่อยไปสั่งคำสั่ง SQL (เอสคิวเเอล) อีกรอบ ทำให้เกิดความยุ่งยากขึ้น จึงมีการนำแนวคิดการทำ ORM (โออาร์เอ็ม) มาใช้
ORM: Object Relational Mapping (โออาร์เอ็ม: อ็อบเจค รีเรชั่นนอล แม็ปปิ้ง) คือ การแปลงข้อมูลแบบ OOP (โอโอพี) ให้เป็น SQL (เอสคิวแอล) และแปลงข้อมูลจากรูปแบบ SQL (เอสคิวแอล) ให้กลับไปเป็นแบบ OOP (โอโอพี) เช่น มีตารางข้อมูล “customer” (คัสโทเมอร์) ก็จะถูกแปลงให้เป็น class customer (คลาส คัสโทเมอร์) คุณลักษณะหรือ Attribute (แอททริบิว) ก็จะถูกแปลงเป็น object (อ็อบเจค) ของคลาสด้วย เป็นการแปลงข้อมูลกลับไปกลับมาเพื่อให้ง่ายต่อการเข้าถึงข้อมูล และลดเวลาของการเขียนโปรแกรมลง

ที่มาภาพ: upload.wikimedia.org/wikipedia/commons/thumb/4/4a/Capabilities1-2.png/800px-Capabilities1-2.png

ย้อนกลับไปยัง

ผู้ใช้งานขณะนี้

กำลังดูบอร์ดนี้: 2 และ บุคคลทั่วไป 0 ท่าน