У меня есть 2 кода для подключения к базе данных SQL Server 2005. код 1 использует набор данных, а Dataadapter, код 2 , не использовал ни тот, ни другой. Может кто-нибудь, пожалуйста, помогите мне объяснить, в чем различия и преимущества / недостатки в обеих программах .. спасибо
code1
//create connection, dataset, dataadapter
System.Data.SqlClient.SqlConnection con;
DataSet ds1;
System.Data.SqlClient.SqlDataAdapter da;</p>
<p>int MaxRows = 0; //hold how many rows in the dataset
int inc = 0; //change the current Row number
private void Form1_Load(object sender, EventArgs e)
{
con = new System.Data.SqlClient.SqlConnection();
ds1 = new DataSet();
//setting the connection string
con.ConnectionString = "Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\Administrator\Documents\Visual Studio 2008\Projects\WindowsFormsApplication5\WindowsFormsApplication5\Test2.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
con.Open();</p>
<pre><code> //create object for 'da' variable
string sql = "SELECT * From tblOutbox";
da = new System.Data.SqlClient.SqlDataAdapter(sql, con);
da.Fill(ds1, "tblOutbox");
NavigateRecords();
//get the number of rows in DataSet
MaxRows = ds1.Tables["tblOutbox"].Rows.Count;
con.Close();
}
код 2:
<code>
System.Data.SqlClient.SqlConnection sqlConnection1 =
new System.Data.SqlClient.SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=F:\Test2.mdf;Integrated Security=True;User Instance=True");</p>
<p>//command queries
System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand();
cmd.CommandType = System.Data.CommandType.Text
//cmd.CommandText = "INSERT INTO tblSend (ip, msg, date) SELECT ip, msg, date FROM tblOutbox";
cmd.Connection = sqlConnection1;</p>
<p>sqlConnection1.Open(); //open con
cmd.ExecuteNonQuery(); //execute query
sqlConnection1.Close(); //close con