คำถามสัมภาษณ์ ADO.Net 50 อันดับแรก (2025)
ต่อไปนี้เป็นคำถามและคำตอบในการสัมภาษณ์ของ ADO.NET สำหรับนักศึกษาใหม่และผู้สมัครที่มีประสบการณ์เพื่อให้ได้งานในฝัน
1. ADO.Net คืออะไร?
ADO.Net มักเรียกว่า ActiveX Data Objects ซึ่งเป็นส่วนหนึ่งของ .Net Framework กรอบงาน ADO.Net มีชุดคลาสที่ใช้เพื่อจัดการการเข้าถึงข้อมูลโดยการเชื่อมต่อกับฐานข้อมูลต่างๆ เช่น SQL, Access, คำพยากรณ์ฯลฯ
ดาวน์โหลดไฟล์ PDF ฟรี: คำถามและคำตอบสัมภาษณ์ ADO.NET
2. วัตถุสำคัญสองประการของ ADO.Net คืออะไร
มีสองวัตถุที่สำคัญของ ADO.Net:
- DataReader และ
- ชุดข้อมูล
3. เนมสเปซที่ใช้ใน ADO.Net เพื่อเชื่อมต่อกับฐานข้อมูลคืออะไร
เนมสเปซต่อไปนี้ใช้เพื่อเชื่อมต่อกับฐานข้อมูล
- เนมสเปซ System.Data
- เนมสเปซ System.Data.OleDb – ผู้ให้บริการข้อมูลที่ใช้ในการเข้าถึงฐานข้อมูล เช่น Access, Oracle หรือ SQL
- เนมสเปซ System.Data.SQLClient – ใช้เพื่อเข้าถึง SQL ในฐานะผู้ให้บริการข้อมูล
4. LINQ คืออะไร?
ลิงค์ เป็นภาษาคิวรีดั้งเดิมสำหรับ .NET Framework และได้รับการออกแบบมาเป็นพิเศษเพื่อรองรับการสืบค้นด้วย สุทธิ. การใช้งาน LINQ สามารถเชื่อมต่อกับ SQL และ MS Access ได้
5. ผู้ให้บริการข้อมูลในกรอบงาน ADO.NET มีอะไรบ้าง?
ด้านล่างผู้ให้บริการข้อมูลใช้ในกรอบงาน ADO.NET
- .NET Framework Data Provider สำหรับ SQL Server – ผู้ให้บริการข้อมูลที่ให้การเข้าถึง ที่ Microsoft SQL Server เวอร์ชัน 7.0 หรือใหม่กว่า และใช้เนมสเปซ System.Data.SqlClient
- ผู้ให้บริการข้อมูล .NET Framework สำหรับ OLE DB – ผู้ให้บริการข้อมูลที่ให้การเข้าถึงฐานข้อมูลใดๆ ที่เปิดเผยโดยใช้ OLE DB และใช้เนมสเปซ System.Data.OleDb
- ผู้ให้บริการข้อมูล .NET Framework สำหรับ ODBC – ผู้ให้บริการข้อมูลที่ให้การเข้าถึงฐานข้อมูลใดๆ ที่เปิดเผยโดยใช้ ODBC และใช้เนมสเปซ System.Data.Odbc
- .NET Framework Data Provider สำหรับ Oracle – ผู้ให้บริการข้อมูลที่ให้การเข้าถึงฐานข้อมูล Oracle 8.1.7 หรือเวอร์ชันที่ใหม่กว่า และใช้เนมสเปซ System.Data.OracleClient
6. DataReader Object คืออะไร?
Datareader เป็นวัตถุของ ADO.Net ซึ่งให้การเข้าถึงข้อมูลจากแหล่งข้อมูลที่ระบุ ประกอบด้วยคลาสที่อ่านข้อมูลจากแหล่งข้อมูลเช่น Oracle, SQL หรือ Access ตามลำดับ
7. Dataset Object คืออะไร?
ชุดข้อมูลถูกตั้งค่าให้เป็นชุดรวบรวมข้อมูลที่มีการแสดงคอลัมน์แบบตาราง แต่ละคอลัมน์ในตารางแสดงถึงตัวแปร และแถวแสดงถึงค่าของตัวแปร วัตถุชุดข้อมูลนี้สามารถหาได้จากค่าฐานข้อมูล
8. Object Pooling คืออะไร?
การรวมอ็อบเจ็กต์เป็นเพียงพื้นที่เก็บข้อมูลของอ็อบเจ็กต์ในหน่วยความจำซึ่งสามารถใช้ได้ในภายหลัง การรวมออบเจ็กต์นี้จะช่วยลดภาระของการสร้างออบเจ็กต์เมื่อจำเป็น เมื่อใดก็ตามที่มีความต้องการออบเจ็กต์ ผู้จัดการกลุ่มออบเจ็กต์จะรับคำขอและให้บริการตามนั้น
9. Connection Pooling คืออะไร?
การรวมการเชื่อมต่อประกอบด้วยการเชื่อมต่อฐานข้อมูลเพื่อให้สามารถใช้การเชื่อมต่อหรือนำกลับมาใช้ใหม่ได้ทุกเมื่อที่มีการร้องขอไปยังฐานข้อมูล เทคนิคการรวมกลุ่มนี้ช่วยเพิ่มประสิทธิภาพในการรันคำสั่งฐานข้อมูล การรวมกลุ่มนี้ช่วยลดเวลาและความพยายามของเราอย่างแน่นอน
10. Data view คืออะไร?
มุมมองข้อมูลคือการแสดงข้อมูลในรูปแบบต่างๆ และผู้ใช้สามารถร้องขอได้ ข้อมูลสามารถเปิดเผยตามลำดับการจัดเรียงที่แตกต่างกันหรือกรองเงื่อนไขของผู้ใช้ด้วยความช่วยเหลือของมุมมองข้อมูล การปรับแต่งข้อมูลยังสามารถทำได้ผ่าน Data View
11. Data Adapter คืออะไร?
Data Adapter เป็นส่วนหนึ่งของผู้ให้บริการข้อมูล ADO.NET ซึ่งทำหน้าที่เป็นตัวสื่อสารระหว่างชุดข้อมูลและแหล่งข้อมูล อะแดปเตอร์ข้อมูลนี้สามารถดำเนินการเลือก แทรก อัปเดต และลบในแหล่งข้อมูลที่ร้องขอได้
12. การใช้ SqlCommand object คืออะไร?
วัตถุ SQLCommand ที่อนุญาตให้ผู้ใช้โต้ตอบกับฐานข้อมูล ออบเจ็กต์นี้ใช้เพื่อค้นหาฐานข้อมูลเป็นหลัก และอาจมีประเภทต่างๆ ได้ เช่น เลือก แทรก แก้ไข และลบ
13. ความแตกต่างระหว่าง ADO และ ADO.Net คืออะไร?
ADO ทำงานกับข้อมูลที่เชื่อมต่อในขณะที่ ADO.Net ทำงานในลักษณะที่ไม่เชื่อมต่อ ADO มีวัตถุหลักที่เรียกว่า Recordset ซึ่งใช้สำหรับอ้างอิงข้อมูล แต่ ADO.Net มีวัตถุต่าง ๆ ในการเข้าถึงฐานข้อมูล
ADO อนุญาตให้สร้างเคอร์เซอร์ฝั่งไคลเอ็นต์ในขณะที่ ADO.Net เกี่ยวข้องกับเคอร์เซอร์ฝั่งเซิร์ฟเวอร์และฝั่งเซิร์ฟเวอร์ ADO อนุญาตให้มีการบันทึกที่มีอยู่ใน XML รูปแบบและ ADO.Net อนุญาตให้จัดการข้อมูลโดยใช้ XML
14. ADO.Net มีประโยชน์อะไรบ้าง?
ต่อไปนี้เป็นประโยชน์ของ ADO.Net:
- การเขียนโปรแกรม
- การบำรุงรักษา
- การทำงานร่วมกัน
- ประสิทธิภาพ
- scalability
15. Connection Object มีประโยชน์อย่างไร?
วัตถุการเชื่อมต่อ ADO.Net ใช้เพื่อสร้างการเชื่อมต่อระหว่างแอปพลิเคชันและแหล่งข้อมูล คำสั่ง SQL สามารถดำเนินการได้เมื่อสร้างการเชื่อมต่อนี้แล้ว จำเป็นต้องปิดวัตถุการเชื่อมต่อเมื่อกิจกรรมฐานข้อมูลเสร็จสมบูรณ์
16. ADO.Net มีคุณลักษณะอะไรบ้าง?
ต่อไปนี้เป็นคุณสมบัติของ ADO.Net:
- เพจข้อมูล
- การดำเนินการถ่ายสำเนาเป็นกลุ่ม
- การควบคุมข้อมูลใหม่
- วิธีการดำเนินการของ Datareader
17. ความแตกต่างระหว่าง Response.Expires และ Reponse.ExpiresAbsolute คืออะไร
คุณสมบัติ Response.expires ระบุนาทีของเพจในแคชนับจากเวลาที่คำขอได้รับการตอบสนองจากเซิร์ฟเวอร์
แต่คุณสมบัติ Response.ExpiresAbsolute ระบุเวลาที่แน่นอนที่เพจในแคชหมดอายุ
ตัวอย่าง -
การตอบกลับหมดอายุ – ตั้งค่าเป็น 10 นาที และจะอยู่ในแคชเป็นเวลา 10 นาทีนับจากเวลาที่มีการร้องขอ
การตอบสนองหมดอายุแน่นอน – 30 ต.ค. 12:20:15 น. จนถึงเวลาที่กำหนด เพจจะอยู่ในแคช
18. Boxing และการแกะกล่องคืออะไร?
การแปลงประเภทค่าเป็นประเภทอ้างอิงเรียกว่า Boxing และการแปลงประเภทอ้างอิงเป็นประเภทค่าเรียกว่า Unboxing Boxing และ Unboxing ใช้สำหรับการคัดเลือกประเภทจากค่าไปยังประเภทอ้างอิงและในทางกลับกัน
19. ความแตกต่างระหว่าง Datareader และ Dataset คืออะไร?
ตารางต่อไปนี้แสดงความแตกต่างระหว่าง Datareader และ Dataset:
เครื่องอ่านข้อมูล | ชุด |
---|---|
ส่งต่อเท่านั้น | วนซ้ำผ่านชุดข้อมูล |
ชุดระเบียนที่เชื่อมต่อ | ชุดระเบียนที่ตัดการเชื่อมต่อ |
เกี่ยวข้องกับโต๊ะเดี่ยว | มีหลายโต๊ะที่เกี่ยวข้อง |
ไม่จำเป็นต้องมีความสัมพันธ์ | ความสัมพันธ์ระหว่างตารางคงอยู่ |
ไม่มีที่เก็บข้อมูล XML | สามารถจัดเก็บเป็น XML ได้ |
ใช้หน่วยความจำน้อยลง | ครอบครองหน่วยความจำมากขึ้น |
อ่านเท่านั้น | สามารถเพิ่ม / อัปเดตและลบได้ |
20. สามารถแก้ไขข้อมูลใน Repeater control ได้หรือไม่?
ไม่ได้ ไม่สามารถแก้ไขข้อมูลในการควบคุม Repeater ได้
21. ส่วนประกอบทั้งหมดของผู้ให้บริการข้อมูล ADO.Net มีอะไรบ้าง?
ต่อไปนี้เป็นส่วนประกอบของผู้ให้บริการข้อมูล ADO.Net:
- วัตถุการเชื่อมต่อ - แสดงถึงการเชื่อมต่อกับฐานข้อมูล
- วัตถุคำสั่ง - ใช้เพื่อดำเนินการตามขั้นตอนที่เก็บไว้และคำสั่งบนฐานข้อมูล
- ExecuteNonQuery – ดำเนินการคำสั่งแต่ไม่ส่งคืนค่าใดๆ
- ExecuteScalar – ดำเนินการและส่งกลับค่าเดียว
- ExecuteReader – ดำเนินการและส่งคืนชุดผลลัพธ์
- DataReader – ชุดระเบียนส่งต่อและอ่านอย่างเดียว
- DataAdapter – ทำหน้าที่เป็นสะพานเชื่อมระหว่างฐานข้อมูลและชุดข้อมูล
22. ความแตกต่างระหว่างผู้ให้บริการ OLEDB และ SQLClient มีอะไรบ้าง
ผู้ให้บริการ OLEDB ใช้เพื่อเข้าถึงฐานข้อมูลใดๆ และให้ความยืดหยุ่นในการเปลี่ยนแปลงฐานข้อมูลได้ตลอดเวลา ผู้ให้บริการ SQLClient ใช้เพื่อเข้าถึงฐานข้อมูล SQL Server เท่านั้น แต่ให้ประสิทธิภาพที่ยอดเยี่ยมกว่าผู้ให้บริการ OLEDB ในขณะที่เชื่อมต่อกับฐานข้อมูล SQL Server
23. มีวิธีการดำเนินการที่แตกต่างกันอะไรบ้างของ Ado.Net?
ต่อไปนี้เป็นวิธีการดำเนินการที่แตกต่างกันของวัตถุคำสั่ง ADO.Net:
- ExecuteScalar – ส่งกลับค่าเดียวจากชุดข้อมูล
- ExecuteNonQuery – ส่งกลับชุดผลลัพธ์จากชุดข้อมูลและมีหลายค่า
- ExecuteReader – ชุดผลลัพธ์แบบส่งต่อเท่านั้น
- ExecuteXMLReader – สร้างวัตถุ XMLReader จาก SQL Query
24. คำสั่งทั้งหมดที่ใช้กับ Data Adapter มีอะไรบ้าง?
DataAdapter ใช้เพื่อดึงข้อมูลจากแหล่งข้อมูล .Insertcommand, UpdateCommand และ DeleteCommand เป็นออบเจ็กต์คำสั่งที่ใช้ใน DataAdapter เพื่อจัดการการอัปเดตบนฐานข้อมูล
25. มีวิธีการต่างๆ อะไรบ้างภายใต้ sqlcommand?
มีวิธีการที่แตกต่างกันภายใต้ SqlCommand ดังนี้:
- ยกเลิก – ยกเลิกแบบสอบถาม
- CreateParameter – ส่งกลับพารามิเตอร์ SQL
- ExecuteNonQuery – ดำเนินการและส่งกลับจำนวนแถวที่ได้รับผลกระทบ
- ExecuteReader – ดำเนินการและส่งคืนข้อมูลใน DataReader
- ExecuteScalar – ดำเนินการและส่งกลับค่าเดียว
- ExecuteXmlReader – ดำเนินการและส่งคืนข้อมูลในวัตถุ XMLDataReader
- ResetCommandTimeout – รีเซ็ตคุณสมบัติการหมดเวลา
26. ความแตกต่างระหว่าง Dataset.clone และ Dataset.copy คืออะไร?
โครงสร้างการคัดลอกออบเจ็กต์ Dataset.clone ของชุดข้อมูล รวมถึงสคีมา ความสัมพันธ์ และข้อจำกัด สิ่งนี้จะไม่คัดลอกข้อมูลในตาราง
Dataset.copy – คัดลอกทั้งโครงสร้างและข้อมูลจากตาราง
27. ความแตกต่างระหว่าง Command และ CommandBuilder object คืออะไร
Command ใช้เพื่อดำเนินการค้นหาทุกประเภท เช่น DML และ DDL DML ไม่มีอะไรนอกจากการแทรก อัปเดต และลบ DDL ก็เหมือนกับการสร้างและวางตาราง
ออบเจ็กต์ Command Builder ใช้เพื่อสร้างและดำเนินการคำสั่ง DDL เช่น สร้างและวางตาราง
28. เป็นไปได้ไหมที่จะโหลดตารางหลายตารางในชุดข้อมูลเดียวกัน?
ใช่ คุณสามารถโหลดหลายตารางในชุดข้อมูลเดียวได้
29. ผู้ให้บริการใดใช้เชื่อมต่อ MS Access, Oracle ฯลฯ…?
ผู้ให้บริการ OLEDB และผู้ให้บริการ ODBC ใช้เพื่อเชื่อมต่อกับ MS Access และ Oracle Oracle Data Provider ยังใช้เพื่อเชื่อมต่อฐานข้อมูล Oracle โดยเฉพาะ
30. เราใช้ Stored Procedure ใน ADO.Net หรือไม่?
ใช่ กระบวนการจัดเก็บถูกใช้ใน ADO.Net และสามารถใช้สำหรับฟังก์ชันที่ซ้ำกันทั่วไปได้
31. ออบเจ็กต์ชุดข้อมูล XML มีวิธีการใดบ้าง
มีวิธีการต่างๆ ของอ็อบเจ็กต์ชุดข้อมูล XML:
- GetXml() – รับข้อมูล XML ในชุดข้อมูลเป็นสตริงเดียว
- GetXmlSchema() – รับ XSD Schema ในชุดข้อมูลเป็นสตริงเดียว
- ReadXml() – อ่านข้อมูล XML จากไฟล์
- ReadXmlSchema() – อ่าน XML schema จากไฟล์
- WriteXml() – เขียนเนื้อหาของชุดข้อมูลลงในไฟล์
- WriteXmlSchema() – เขียน XSD Schema ลงในไฟล์
32. เทคนิคการตรวจสอบสิทธิ์ที่แตกต่างกันที่ใช้ในการเชื่อมต่อกับ MS SQL Server มีอะไรบ้าง
SQL Server ควรตรวจสอบสิทธิ์ก่อนที่จะดำเนินกิจกรรมใดๆ ในฐานข้อมูล การรับรองความถูกต้องมีสองประเภท:
- การรับรองความถูกต้องของ Windows – ใช้การรับรองความถูกต้องโดยใช้บัญชีโดเมน Windows เท่านั้น
- โหมดการรับรองความถูกต้องของ SQL Server และ Windows – การรับรองความถูกต้องที่มาพร้อมกับทั้งการรับรองความถูกต้องของ Windows และ SQL Server
33. Dataview มีประโยชน์อย่างไร?
Dataview ใช้เพื่อแสดงทั้งตารางหรือบางส่วนของตาราง เป็นมุมมองที่ดีที่สุดสำหรับการเรียงลำดับและค้นหาข้อมูลในตารางข้อมูล
34. ผู้ให้บริการข้อมูลใน ADO.Net มีอะไรบ้าง?
ต่อไปนี้คือผู้ให้บริการข้อมูลที่ใช้ใน ADO.Net:
- เอ็มเอส SQL เซิร์ฟเวอร์
- OLEDB.
- โอดีบีซี.
35. คลาสคำสั่งใช้วิธีใดในการดำเนินการคำสั่ง SQL ที่ส่งคืนค่าเดียว
เมธอด Execute Scalar ถูกใช้โดยคลาสคำสั่งเพื่อรันคำสั่ง SQL ซึ่งสามารถส่งคืนค่าเดียวได้
36. คำหลักใดที่ใช้ในการยอมรับจำนวนพารามิเตอร์ที่แปรผัน?
คีย์เวิร์ด Params ใช้เพื่อยอมรับจำนวนพารามิเตอร์ที่แปรผัน
37. ทอมมีเอกสาร XML และต้องอ่านทุกวัน วัตถุ XML ใช้วิธีใดในการอ่านไฟล์ XML นี้
ReadXML() ใช้อ่านไฟล์ XML
38. OLEDBAdapter ใช้วิธีการใดในการเติมข้อมูลด้วยเรคคอร์ดในชุดข้อมูล
Fill Method ใช้เพื่อเติมชุดข้อมูลด้วยบันทึก
39. วัตถุใดที่จำเป็นต้องปิด?
จำเป็นต้องปิดวัตถุ OLEDBReader และ OLEDBConnection ข้อมูลนี้จะยังคงอยู่ในหน่วยความจำหากปิดไม่ถูกต้อง
40. ADO.Net มีเลเยอร์อะไรบ้าง?
ADO.Net มีสามเลเยอร์ที่แตกต่างกัน:
- เลเยอร์การนำเสนอ
- เลเยอร์ลอจิกธุรกิจ
- เลเยอร์การเข้าถึงฐานข้อมูล
41. ชุดข้อมูลที่มีชนิดข้อมูลและไม่มีชนิดข้อมูลคืออะไร
ชุดข้อมูลที่พิมพ์จะใช้ชื่อและประเภทข้อมูลที่ชัดเจนสำหรับสมาชิก แต่ชุดข้อมูลที่ไม่ถูกพิมพ์จะใช้ตารางและคอลัมน์สำหรับสมาชิก
42. จะหยุดการทำงานของเธรดได้อย่างไร?
ฟังก์ชัน Thread.Abort() จะหยุดการทำงานของเธรดเมื่อใดก็ได้
43. ใน ADO.Net ใช้วิธีใดในการเรียงลำดับข้อมูล?
วิธีการ Sort() ของ GridViewControl ใช้ในการจัดเรียงข้อมูลใน DataTable
44. วัตถุใดที่ใช้ในการเพิ่มความสัมพันธ์ระหว่าง Datatable สองรายการ?
วัตถุ DataRelation ใช้เพื่อเพิ่มความสัมพันธ์ระหว่างวัตถุ DataTable สองวัตถุขึ้นไป
45. วิธีใดดีที่สุดในการรับค่าสองค่าจากฐานข้อมูล
ExecuteNonQuery เป็นวิธีที่ดีที่สุดในการรับค่าสองค่าจากฐานข้อมูล
46. มีคลาสอะไรบ้างที่มีอยู่ใน System.Data Namespace?
ต่อไปนี้เป็นคลาสที่มีอยู่ใน System.Data Namespace:
- ชุดข้อมูล
- ตารางข้อมูล.
- ข้อมูลคอลัมน์
- ข้อมูลแถว
- ความสัมพันธ์ข้อมูล
- ข้อจำกัด
47. Stored Procedure มีประโยชน์อย่างไร?
ต่อไปนี้คือการใช้ Stored Procedure:
- ปรับปรุงประสิทธิภาพ
- ใช้งานง่ายและบำรุงรักษา
- ความปลอดภัย
- ใช้เวลาและความพยายามน้อยลงในการดำเนินการ
- ปริมาณการใช้เครือข่ายน้อยลง
48. ค่า Timeout เริ่มต้นสำหรับคุณสมบัติ SqlCommand.CommandTimeout คืออะไร
การหมดเวลาเริ่มต้นของคำสั่ง Sqlcommand คุณสมบัติ CommandTimeout คือ 30 วินาที
49. คลาสใน System.Data.Common Namespace คืออะไร?
มีสองคลาสที่เกี่ยวข้องใน System.Data.Common Nameapce:
- DataColumnMapping.
- DataTableMapping.
50 คืออะไร ลิงค์?
Language Integrated Query หรือ LINQ ช่วยให้โปรแกรมเมอร์และผู้ทดสอบสามารถสืบค้นข้อมูล และใช้คำค้นหาและผลลัพธ์ของประเภทอย่างยิ่ง
คำถามสัมภาษณ์เหล่านี้จะช่วยในวีว่าของคุณ (วาจา)
คำตอบ 39 OLDDBConnection ถูกหรือผิด
ฉันคิดว่ามันเป็น OLEDBConnection ไม่ใช่ OLDDBConnection
แก้ไขข้อผิดพลาดแล้ว
ออบเจ็กต์ Command Builder ใช้เพื่อสร้างและดำเนินการคำสั่ง DML เช่น สร้างและวางตาราง…. ฉันคิดว่ามันควรจะเป็น DDL
แก้ไขข้อผิดพลาด! ขอบคุณ
คิวดี
คำสั่งข้อขัดแย้ง ExecuteNonQuery ใน 23 และ 25 คำตอบ
ขอบคุณสำหรับการเขียน มีการปรับปรุง
ขอบคุณที่รัก