ciao,
come tu ti sei evoluto passando da asp ad asp.net, anche ADO si è evoluto ed è passato ad ADO.NET
Per access puoi utilizzare la libreria System.Data.OleDb (System.Data.SqlClient per SQL).
I recordset in pratica non esistono più, ma i dati li puoi ricevere in altri oggetti:
DataTable, DataReader, DataSet.
DataReader è più simile al vecchio recordset, ma con alcune limitazioni (Reader appunto)
Puoi aprire una connessione con l'oggetto <prefix>Connection
(OleDbConnection , SqlConnection )
Puoi eseguire query con l'oggetto <prefix>Command
(OleDbCommand , SqlCommand )
ed utilizzare i tre metodi classici:
ExecuteNonQuery : nome fuorviante, certo che esegue una query, ma senza risultati, esempio un update, un insert, o una SP che non restituisce nulla (era meglio se si chiamave ExecuteQueryNonResult)
ExecuteReader : esegue una select e restituisce il risultato in un DataReader
ExecuteScalar : esegue una query e restituisce un unico risultato (un record con un campo)
per le datatable devi usare un nuovo oggetto che si chiama OleDbDataAdapter
qui un piccolissimo esempio:
codice:
string fileDBPath = "c:\bla_bla_bla\access.mdb";
string connStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source={0};User Id=admin;Password=;";
string sql = "SELECT * FROM myTable";
using (OleDbConnection dbConn = new OleDbConnection(string.Format(connStr, fileDBPath)))
{
using (OleDbCommand cmd = new OleDbCommand(sql, dbConn))
{
DataTable dt = new DataTable();
OleDbDataAdapter da = new OleDbDataAdapter(cmd);
da.Fill(dt);
//ora la tua dt è piena
}
}
per un elenco essaudiente delle stringhe di connessione:
http://connectionstrings.com/access
Ciao