มีหนังสือเล่มไหน อธิบายการใช้งานDataset Schema,Bindingsource และการทำงานกับDatagridviewบ้าง

โปรเจคบริษัทที่ผมทำอยู่เขาใช้เฟรมเวิร์ค .Net โดยใช้Datasourceมาเป็นตัวกลางระหว่างโปรแกรมกับDB
ตามภาพ


มันค่อนข้างสะดวก แค่เราใส่Query SELECT * FROM  มันก็จะสร้างฟังก์ชั่นพื้นฐานให้อัติโนมัติ เช่น Update,Insert,Delete,Rollbackให้เอง

สมัยเรียนไม่เคยได้ยินมาก่อน ไม่รู้จักว่ามันคืออะไร Datatable, TableAdapter , Bingdingsource
หาหนังสืออ่านก็ไม่เจอเล่มไหนที่อธิบายวิธีใช้เกี่ยวกับมัน? หนังสือ .Netส่วนใหญ่ก็อธิบายแค่Syntaxทั่วไป พอถึงหัวข้อเชื่อมต่อกับDatabase
ส่วนใหญ่จะการเขียนSQLในโค้ด.VB แล้วค่อยไปเรียก cmd.ExecuteNonQuery()
พอติดปัญหาสักอย่างนึง แล้วด้วยการที่มันเป็นUIในรูปแบบDiagram (น่าจะเรียกว่าDataset Schema ที่สร้างจากXML) มันยิ่งไม่รู้ว่าจะค้นในGoogleยังไง?
แปะรูปถามในStackoverflowก็ได้คำตอบมาเป็นโค้ด เช่น
Dim table1 As DataTable = New DataTable("patients")
table1.Columns.Add("name")
table1.Columns.Add("id")
table1.Rows.Add("sam", 1)
table1.Rows.Add("mark", 2)


แม้ตอนนี้ผมจะเข้าใจระบบDataset Schema ของVisual Studio บ้างแล้ว
แต่ก็รู้ไม่เต็ม100% มันมีบางอย่างที่ต้องเข้าใจให้ลึกเกี่ยวกับขอบเขตการทำงานของมัน
อย่างเช่น

-ฟิล์ดที่มีRelation 2 เส้น มันจะเลือกเส้นไหน?
-การใช้TableAdapter ต้องFill Datatableไหนก่อนหลัง มันมีเงื่อนไขของมัน ไม่งั้นerror
-Datagridview,Datagrid ต่างกันยังไง?
-คำว่าDirtyในความหมายของDatatableมันคืออะไร?
-Begin Edit,End Edit เห็นบางคนก็ใช้ บางคนก็ไม่ใช้ มันมีผลยังไง?
-ComboboxในDatagridview ส่วนDatamember.Valueต้องตรงกับ ValueของCellนั้นๆซึ่งถูกBindingsourceโดยDatatable ไม่งั้นค่าไม่ขึ้น
-Binding Datatbleเข้ากับDatagridviewแล้วลองEditค่า แต่พอGet StateของDatatableทำไม ไม่เป็นModified?
-แม้ในQueryไม่ได้Selectฟิล์ดนั้นขึ้นมา ก็สามารถเอาค่าของฟิล์ดของDatatable B มาโชว์ในฟิล์ดของDatatable Aได้ จากRelation


ทุกครั้งที่ผมเจอปัญหา ผมทำได้แค่Searchเพื่อแก้ให้มันผ่านๆ แต่ไม่เข้าใจพื้นฐานของมันเลย
มีคำถามอีกเยอะที่ผมไม่เข้าใจเกี่ยวกับมัน? ผมจะต้องไปหาอ่านได้ที่ไหน? หนังสืออะไร ?เว็บไหน?
ผมคิดว่าถ้าเราใช้เป็นมันจะสะดวกมากๆ

(อีกหนึ่งคำถามต่อเนื่องจากคำถามทจากหัวกระทู้)
ผมเคยไปทำโปรเจคJava  สิ่งที่ทีมJavaพยายามทำก็คือ สร้างClass ObjectแทนDatatable โดยที่แต่ละAttributeของObjectนั้นก็แทนDatacolumn
แล้วก็Return ออกมาเป็นArrayของObjectนั้น แทนDatarow(Records)
ผมก็เลยนึกสงสัยขึ้นมาอีกว่า  แพลตฟอร์มอื่นมันมีระบบDatasourceเหมือนกับ Dot Net รึเปล่า?  มีDatatableมารับResultจากการQueryมั้ย?
แล้วโดยทั่วๆไป เขาใช้วิธีไหนในการพักข้อมูลจากDatabase
แก้ไขข้อความเมื่อ
แสดงความคิดเห็น
Preview
โปรดศึกษาและยอมรับนโยบายข้อมูลส่วนบุคคลก่อนเริ่มใช้งาน อ่านเพิ่มเติมได้ที่นี่