วันจันทร์ที่ 30 สิงหาคม พ.ศ. 2553

ข่าวประจำสัปดาห์ที่ 7

ความรู้เบื้องต้นเกี่ยวกับ Database Component for Borland Delphi 6.0
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::>>

ในการพัฒนา Application ด้วย Delphi นั้น Component ถือว่าเป็นเครื่องมือที่มีความสำคัญมาก เนื่องจากเราสามารถใช้ Component ในการติดต่อและตอบโต้กับผู้ใช้ และเป็น เครื่องมือที่ช่วยให้ควบคุมการทำงานภายใน Applicationได้อย่างง่ายดายและสะดวก
ความหมายและประเภทของ Component

คอมโพเนนต์ คือ object ต่างๆที่นำมาใช้ประกอบในการสร้างแอพลิเคชัน ซึ่ง คอมโพเนนต์ ส่วนใหญ่จะถูกจัดเก็บไว้ใน Compinent Palette โดยแยกเก็บเป็นหมวดหมู่เอาไว้พร้อมนำไปประกอบแอพพลิเคชันที่เราสร้างขึ้น คอมโพเนนต์จะถูกแยกออกเป็น 2 ประเภทดังนี้
Visual Component เป็นคอมโพเนนต์ที่มีส่วนติดต่อกับผู้ใช้โดยจะแสดงให้เห็นในขณะที่รันแอพพลิเคชัน เช่นข้อความหรือปุ่มต่างๆ
Non-Visual Component เป็นคอมโพเนนต์ที่ไม่แสดงให้เห็นในขณะที่รันแอพพลิเคชัน โดยจะเป็นไอคอนขนาดเล็กอยู่บนฟอร์มขณะออกแบบ เช่น MainMenu , PopupMenu

DBText การทำงานจะคล้ายๆกับคอมโพเนนต์ Label ในเพจมาตรฐาน แต่ DBTextจะไม่มีproperty ที่ใช้กำหนดข้อความให้กับคอมโพเนนต์ โดยข้อความนั้นจะเป็นข้อมูลที่ดึงมาจากฐานข้อมูล

DBEdit การทำงานคล้ายกับคอมโพเนนต์ Edit แต่เป็นการแสดงข้อมูลที่ได้จากฐานข้อมูลรวมทั้งยังมีความสามารถในการแก้ไขข้อมูลในฐานข้อมูลได้ด้วย

DBMemo ใช้แสดงข้อมูล และแก้ไขข้อมูลจำนวนหลายๆบรรทัด จากฐานข้อมูล

DBImage ใช้ใชการแสดงหรือเปลี่ยนแปลงฟิลด์ข้อมูลที่มีชนิดเป็นรูปภาพจากฐานข้อมูล คอมโพเนนต์นี้มีส่วนช่วยเพิ่มความสามารถในการเก็บข้อมูลชนิดรูปภาพได้เป็นอย่างมาก

DBListbox มีลักษณะคล้ายกับคอมโพเนนต์ ListBox ในแท็บ Standard ซึ่งใช้สำหรับกำหนดลิสต์รายการเพื่อให้ผู้ใช้เลือก แต่รายการที่ถูกเลือกจะถูกเก็บเข้าไปในฟิลด์ที่เรากำหนดให้กับ DBListBox

DBComboBox เป็นคอมโพเนนต์ที่ประกอบด้วยส่วนของ Edit และ ListBox โดยมีลักษณะคล้ายกับคอมโพเนนต์ ComboBox ในแท็บ Standard

DBCheckBox ใช้สำหรับกำหนดฟิลด์ประเภทบูลีน ซึ่งมีลักษณะการทำงานคล้ายกับคอมโพเนนต์ CheckBox ในแท็บ Standard ในการใช้งานจะต้องกำหนด property DataSource สำหรับเชื่อมต่อไปยัง Dataset และพร็อพเพอร์ตี้ DataField สำหรับกำหนดฟิลด์ที่ต้องการทำงานด้วย



:: การสร้างแอพพลิเคชันฐานข้อมูลโดยใช้ ADO
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::>> Top

ทำความรู้จักกับ ADO การพัฒนาแอพพลิเคชันฐานข้อมูลทั่วๆไปใน Delphi นั้นแต่เดิมจะต้องอาศัย BDE ดังที่ได้อธิบายไปแล้วแต่ปัจจุบันได้มีการเพิ่มคุณสมบัติของการติดต่อกับฐานข้อมูลอีกรูปแบบหนึ่ง โดยใช้โมเดลของ Active Data Object หรือ ADO ซึ่งเป็นเทคโนโลยีที่พัฒนาขึ้นมาโดยไมโครซอฟต์เพื่อให้สามารถเข้าถึงแหล่งข้อมูลได้หลายประเภทและใช้งานได้ง่าย
ADO หรือ Active Data Object เป็นเทคโนโลยีที่ใช้ในการติดต่อกับฐานข้อมูลรูปแบบใหม่ เป็น Data Object ที่ช่วยให้แอพพลิเคชันสามารถเข้าถึงข้อมูลได้โดยผ่าน OLE DB (เป็นรูปแบบ และวิธีการเข้าถึงแหล่งข้อมูลของเทคโนโลยี ADO) ซึ่งเป็นอินเตอร์เฟสระดับล่างที่สามารถเข้าถึงแหล่งข้อมูล ได้หลายประเภท โดยจะรวมความสามารถในการเข้าถึงแหล่งข้อมูลในลักษณะที่เรียกว่า Universal Data Access นั่นคือสามารถติดต่อกับฐานข้อมูลได้ หลายประเภท ไม่ว่าจะเป็นฐานข้อมูลแบบ relational หรือ non-relational , e-mail และ ระบบ ไฟล์ , เท็กซ์และกราฟฟิก และแหล่งข้อมูลอื่นๆ ไม่จำกัดว่าต้องเป็นตารางแต่เพียงอย่างเดียว คุณสมบัติของADO คือใช้งานง่าย มีขั้นตอนในการติดต่อระหว่างแอพพลิเคชันน้อย ใช้ทรัพยากรเครือข่ายไม่มาก อีกทั้งยังมีประสิทธิภาพต่อการเข้าถึงข้อมูลสูงสุดด้วย
การทำงานของ ADO นั้นสามารถติดต่อกับแหล่งข้อมูลได้ทั้งแบบ 1-tier คือลักษณะที่ฐานข้อมูลอยู่ภายในเครื่องเดียวกับแอพพลิเคชัน และการใช้งานแบบ multi-tier คือลักษณะที่ฐานข้อมูลอยู่คนละเครื่องกับแอพพลิเคชัน
แนวโน้มการใช้งาน ADO จะเพิ่มขึ้นเรื่อยๆ โดยเฉพาะอย่างยิ่งในการเข้าถึงข้อมูลของไมโครซอฟต์เช่น MS Access และ My SQL Server ซึ่งนอกจากจะทำงานได้อย่างสมบูรณ์กว่าการใช้ BDE แล้วการแจกจ่ายโปรแกรมที่ใช้ ADO ในอนาคตไม่จำเป็นต้องมีการแจกจ่าย Database Engine ไปด้วยเลย เนื่องจาก Database Engine ที่ใช้คือ OLE DB ซึ่งจะมีอยู่ใน MS Windows รุ่นใหม่ๆ (98 SE , 2000)และใน MS Office 2000 ด้วย
ขั้นตอนการติดต่อกับฐานข้อมูลโดยใช้ ADO อธิบายได้ดังรูป



ในทำนองเดียวกับ BDE คอมโพเนนต์ที่ใช้ติดต่อกับฐานข้อมูลโดยผ่าน ADO นั้น ก็แบ่งเป็น 3 ประเภทเช่นกัน คือ Dataset , Datasource และ Data Control ซึ่งรายละเอียดในการใช้งานของ Datasource และ Data Control นั้นจะเหมือนกันกับการใช้งานใน BDE จะต่างกันแต่เพียงส่วนของ Dataset ซึ่งรายละเอียดของ Dataset ที่ใช้กับ ADO มีดังนี้ ADOConnection ใช้ติดต่อกับแหล่งข้อมูลของ ADO โดยเราสามารถใช้ ADOConnaection ร่วมกับADODataset ต่างๆและคอมโพเนนต์ ADOCommand เพื่อเอ็กซีคิวคำสั่งและเข้าถึงข้อมูล
ADODataset เป็นคอมโพเนนต์หลักที่ใช้ในการเข้าถึงข้อมูล สามารถดึงข้อมูลจากเทเบิลเดี่ยวๆหรือหลายๆเทเบิลโดยใช้คำสั่ง SQL ก็ได้ นอกจากนี้ยังสามารถติดต่อกับแหล่งข้อมูลโดยตรงหรือผ่าน ADOConnection ก็ได้
ADOTable ใช้สำหรับทำงานกับเทเบิลเดี่ยวๆสามารถติดต่อกับแหล่งข้อมูลโดยตรงหรือผ่าน ADOConnection ก็ได้
ADOQuery ใช้สำหรับทำงานกับคำสั่ง SQL สามารถติดต่อกับแหล่งข้อมูลโดยตรง หรือผ่าน ADOConnection ก็ได้
ADOStoredProc ใช้สำหรับเอ็กซีคิวต์ stored procedure สามารถติดต่อกับแหล่งข้อมูลโดยตรง หรือผ่าน ADOConnection ก็ได้
ADOCommand ใช้ในการเอ็กซีคิวต์คำสั่งต่างๆเช่นคำสั่ง SQL สามารถติดต่อกับแหล่งข้อมูลโดยตรง หรือผ่าน ADOConnection ก็ได้
RDSConnection เป็นคอมโพเนนต์ที่มีลักษณะการทำงานคล้ายกับ ADOConnectionใช้ในการสร้างแอพพลิเคชันแบบ multi-tier

ออบเจ็คหลักๆของ ADO คือ Connection, Command และ Recordset โดยออบเจ็คเหล่านี้แทนด้วย คอมโพเนนต์ใน Delphi คือ ADOConnection, ADOCommand และ ADO dataset ทั้งหลาย (คือ ADODatasset, ADOTable และ ADOQuery) นอกจากนี้ยังมีออบเจ็คอื่นที่ช่วยในการทำงานของ ADO เพียงแต่จะไม่ถูกเรียกใช้โดยตรงและไม่มีคอมโพเนนต์ที่ใช้แทนออบเจ็คเหล่านี้
การใช้ ADO ทำให้เราสร้างแอพพลิเคชันฐานข้อมูลได้โดยไม่ขึ้นกับ Boland Database Engine (BDE) คือ ได้โดยไม่ต้องมี BDE แต่ลักษณะโครงสร้างของแอพพลิเคชันก็ยังคงเป็นเช่นเดิม เพียงแต่จะใช้คอมโพเนนต์ ADO แทน Data Access เท่านั้นและยังคงใช้ DataSource กับ Data Control ชุดเดียวกัน เพียงแต่เปลี่ยนค่าพร็อพเพอร์ตี Dataset ของ DataSource ให้เป็นคอมโพเนนต์ ADO
การติดต่อกับแหล่งข้อมูล
การติดต่อกับฐานข้อมูลเพื่อนำข้อมูลต่างๆมาใช้งานนั้นสามารถเชื่อมโยงแอพพลิเคชันเข้ากับฐานข้อมูลได้ 2 วิธี วิธีที่ 1 ใช้คอมโพเนนต์ ADOConnection ในการติดต่อกับฐานข้อมูล ซึ่งจะเป็นตัวกลางระหว่างฐานข้อมูลและ Dataset
วิธีที่ 2 ใช้คอมโพเนนต์ Dataset เชื่อมต่อกับฐานข้อมูลโดยตรง
ในการติดต่อกับฐานข้อมูลโดยใช้ ADOConnection จะมีข้อดีกว่าการใช้ Dataset ติดต่อโดยตรงดังนี้
-- สามารถใช้ ADOConnection ร่วมกับคอมโพเนต์ ADO ตัวอื่นๆได้ ช่วยให้การปรับปรุงแก้ไขทำได้ง่าย เช่น เมื่อมีการเปลี่ยนแปลงชื่อฐานข้อมูลโดยโครงสร้างภายในเหมือนเดิม เราก็แก้ไขเฉพาะที่ ADOConnection ซึ่งจะไม่มีผลกระทบต่อคอมโพเนนต์ ADO ตัวอื่นๆ
-- สามารถดูได้ว่า มีคอมโพเนนต์ ADO อะไรบ้างที่เชื่อมต่ออยู่กับ ADOConnection
-- สามารถควบคุม Transaction ที่เกิดขึ้นได้
คลิกเลยคาฟ

Privacy Policy About Us
Copyright © 2000-2008 - Job Online Co.,Ltd. All rights reserved.
Conta888ct Webmas
t

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

แสดงความคิดเห็น