SqlDataAdapter da = new SqlDataAdapter(strSQL, strConn);Accetta 2 parametri stringa che sono la query e la connessione, Questo tipo di approccio presenta lo svantaggio che verrà crata una connessione per ogni DataAdapter che verrà creato.
Questo svantaggio se così lo si vuole considerare, viene risolto con il secondo costruttore
da = new SqlDataAdapter(sSql, cn);In questo modo si passa al DataAdapter una connessione invece di una stringa di connessione.
Infine il terzo sovraccarico del costruttore permette di utilizzare un oggetto SqlCommand per andare poi a riempire un DataSet.
string strSQL = "SELECT ID, Name FROM Clienti"
SqlCommand cmd = new SqlCommand(strSQL, cn);
SqlDataAdapter da = new OleDbDataAdapter(cmd);
da.Fill(ds);






