Bill,
With this one you can try it.
\\\needs a datagrid and a textbox on a form
private void Form1_Load(object sender, System.EventArgs e)
{
SqlConnection conn = new SqlConnection
("Server=YourServer;DataBase=Northwind; Integrated Security=SSPI");
string sqlstr = "SELECT EmployeeID, FirstName FROM Employees";
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter
(sqlstr,conn);
da.Fill(ds);
ds.Tables[0].Rows[0][1] = "Cor";
sqlstr = "Update Employees Set FirstName = 'Bill' Where EmployeeId = 1";
SqlCommand cm = new SqlCommand(sqlstr,conn);
conn.Open();
cm.ExecuteNonQuery();
SqlCommand cmUpdate = conn.CreateCommand();
cmUpdate.CommandText =
"UPDATE Employees SET FirstName = @FirstName WHERE (EmployeeID =
@Original_Employe" +
"eID) AND (FirstName = @Original_FirstName); SELECT EmployeeID, FirstName
FROM Em" +
"ployees WHERE (EmployeeID = @EmployeeID)";
cmUpdate.Parameters.Add(new SqlParameter("@FirstName", SqlDbType.NVarChar,
10, "FirstName"));
cmUpdate.Parameters.Add(new SqlParameter("@Original_EmployeeID",
SqlDbType.Int, 4, ParameterDirection.Input, false, ((System.Byte)(0)),
((System.Byte)(0)), "EmployeeID", DataRowVersion.Original, null));
cmUpdate.Parameters.Add(new SqlParameter("@Original_FirstName",
SqlDbType.NVarChar, 10, ParameterDirection.Input, false, ((System.Byte)(0)),
((System.Byte)(0)), "FirstName", DataRowVersion.Original, null));
cmUpdate.Parameters.Add(new SqlParameter("@EmployeeID", SqlDbType.Int, 4,
"EmployeeID"));
SqlTransaction Tr;
Tr = conn.BeginTransaction();
da.UpdateCommand = cmUpdate;
da.UpdateCommand.Transaction = Tr;
if (ds.HasChanges())
{
try
{
da.Update(ds.GetChanges());
ds.AcceptChanges();
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
try
{
Tr.Rollback();
}
catch (Exception ex2)
{
MessageBox.Show(ex2.ToString());
}
}
}
dataGrid1.DataSource = ds.Tables[0];
conn.Close();
conn.Open();
cm.CommandText = "Select FirstName From Employees Where EmployeeId = 1";
textBox1.Text = cm.ExecuteScalar().ToString();
cm.CommandText = "Update Employees Set FirstName = 'Nancy' Where EmployeeId
= 1";
cm.ExecuteNonQuery();
conn.Dispose();
}
///
Cor