Datalank เป็นเลเยอร์นามธรรมที่เบาที่สุดที่เป็นไปได้ในการเข้าถึงข้อมูล มันเบามากจนไม่สมบูรณ์ ไม่ใช่ ORM มันไม่ใช่วิธีแก้ปัญหาทั้งหมด ไม่ใช่ลิงค์ข้อมูล มันเป็นวิธีที่แปลกประหลาดในการดึงข้อมูลและทำซ้ำชุดผลลัพธ์แบบสอบถามง่าย ๆ เดียว ต้องการมากขึ้น? มองไปที่อื่น จุดของการใช้วัตถุสองสามชิ้นที่มีอินเทอร์เฟซที่อธิบายไว้ล่วงหน้าคือการหลีกเลี่ยงงาน บางอย่าง ของการเปลี่ยนไปใช้ฐานข้อมูลที่แตกต่างกันที่ไหนสักแห่งตามตลอดอายุการใช้งานของโครงการ แต่ไม่ใช่ทั้งหมด
DataLankProtocol.pas กำหนดอินเตอร์เฟสสำหรับ TDataConnection และ TQueryResult และวัตถุ แต่คุณไม่ควรใช้มัน (ยกเว้นอาจรวมไว้ในโครงการเพื่อดูการรวบรวมโดยไม่มีข้อผิดพลาดทางไวยากรณ์)
ในโครงการของคุณรวมหน่วย DataLank.pas ที่มีรหัสเช่นนี้แก้ไขวัตถุผ่านไปยังการใช้งานที่คุณเลือก:
unit DataLink;
interface
uses SomeDBData;
type
TDataConnection = TSomeDBConnection;
TQueryResult = TSomeDBCommand;
implementation
end.
สิ่งนี้ช่วยให้คุณสามารถใช้ TDataConnection ในรหัสการเริ่มต้นและ TQueryResult ตลอดแอปพลิเคชันและยังคงเปลี่ยนเป็นฐานข้อมูลที่แตกต่างกันในภายหลังในชีวิตของโครงการ
มันไม่ใช่ ข้อมูลที่ ฉัน nk ประเด็นก็คือมีชั้นข้อมูลที่บางที่สุดเท่าที่จะทำได้ดังนั้นฉันจึงเลือกบางอย่างจาก MW: อรรถาภิธาน/บางและตามที่ระบุไว้โดย MW: Dictionary/Lank 'Lank' หมายถึง:
ไม่กรอกข้อมูล: ไม่ใช่ทุกการดำเนินการในฐานข้อมูลที่มีอยู่ในนามธรรมที่ จำกัด การดำเนินการปกติสามารถใช้วัตถุ TQueryResult ได้ แต่งานขั้นสูงเช่นการวนซ้ำผลลัพธ์ในลักษณะที่แตกต่างกันหรือเริ่มต้นการสำรองข้อมูลอัตโนมัติจะต้องทำโดยการพูดคุยกับอินเทอร์เฟซฐานข้อมูลเฉพาะหรือเครื่องมืออื่น ๆ
ไม่เพียงพอในด้านคุณภาพปริญญาหรือขอบเขต: ไม่เหมาะกับทุกคนหรือสำหรับโครงการใด ๆ เลือกที่จะใช้ Datalank ในโครงการที่จะใช้ข้อมูลจากฐานข้อมูลเป็นหลักในลักษณะตรงไปตรงมาและสามารถเบี่ยงเบนไปยังวิธีการอื่น ๆ เพื่อทำงานขั้นสูงใด ๆ บนข้อมูล
แขวนตรงและปวกเปียกโดยไม่ต้องสปริงหรือม้วน: มันช่วยให้คุณได้รับและใช้ข้อมูลจากฐานข้อมูลโดยใช้ TQueryResult ไม่มีอะไรมากไปกว่านี้ มันไม่ได้ทำงานพิเศษสำหรับคุณ ไม่ใช่ ORM มันเป็นเพียงเลเยอร์ที่เป็นนามธรรมที่ไม่สมบูรณ์แบบง่าย ๆ ที่จะทำลายงานที่จำเป็นในการเปลี่ยนไปใช้ฐานข้อมูลที่แตกต่างกันในภายหลังในช่วงชีวิตของโครงการ แต่โดยเฉพาะอย่างยิ่ง ไม่ ให้เกิดความพยายามนั้น