Difference between ADO.NET Dataset and ADO Recordset?
- A Dataset can represent an entire relational database in memory, complete with tables, relations, and views. A Recordset cannot do the same.
- Dataset can fetch source data from many tables at a time, whereas for Recordset you can achieve the same only using the SQL joins.
- A Dataset is designed to work without any continuing connection to the original data source. Recordset maintains continuous connection with original data source.
- Data in a Dataset is bulk-loaded, rather than being loaded on demand.
- There's no concept of cursor types in a Dataset.
- Datasets have no current record pointer you can use foreach loops to move through the data. Recordsets have pointers to move through them.
- You can store many edits in a Dataset, and write them to the original data source in a single operation.
- Though the Dataset is universal, other objects in ADO.NET come in different versions for different data sources.