33.2 Die Konstruktoren der Klasse DataAdapter
Der SqlDataAdapter stellt die Verbindung zwischen einer Datenquelle und einem DataSet bzw. einer DataTable her und füllt diese mit den angefragten Daten. Die DataAdapter-Klassen (OleDbDataAdapter, SqlDataAdapter und OdbcDataAdapter) verfügen jeweils über vier Konstruktoren mit identischer Parameterliste.
public SqlDataAdapter();
public SqlDataAdapter(SqlCommand command);
public SqlDataAdapter(string selectCommand, SqlConnection);
public SqlDataAdapter(string selectCommand, string connectionString);
Der SqlDataAdapter muss wissen, auf welcher Verbindung er einen Befehl absetzen soll; ebenso muss er selbstverständlich auch den Befehl kennen. Die Konstruktoren bieten daher mehrere Kombinationsmöglichkeiten an, dem SqlDataAdapter die von ihm benötigten Informationen zu übergeben.
Das Connection-Objekt dem Konstruktor übergeben
Verwenden Sie in Ihrer Anwendung mehrere SqlDataAdapter-Objekte, sollten Sie mit Bedacht den Konstruktor wählen. Übergeben Sie den Konstruktoraufrufen der SqlDataAdapter-Objekte eine Zeichenfolge, wird für jedes DataAdapter-Objekt eine neue Verbindung eingerichtet. Also beispielsweise:
string strCon =@"Data Source=.\sqlexpress;" +
"Initial Catalog=northwind;Trusted_Connection=Yes";
SqlDataAdapter da1 = new SqlDataAdapter(textSQL1, strCon);
SqlDataAdapter da2 = new SqlDataAdapter(textSQL2, strCon);
War das von Ihnen beabsichtigt, gibt es daran nichts zu kritisieren. Reicht Ihnen aber eine Verbindung aus, sollten Sie stattdessen den Konstruktor verwenden, der neben der Abfragezeichenfolge die Referenz auf das SqlConnection-Objekt erwartet.
Ihre Meinung
Wie hat Ihnen das Openbook gefallen? Wir freuen uns immer über Ihre Rückmeldung. Schreiben Sie uns gerne Ihr Feedback als E-Mail an kommunikation@rheinwerk-verlag.de.