Создаю датасет, заполняю его, сохраняю изменения в базу данных. Но Update не работает. Вернее он срабатывает, но запрос не производит совершенно никакого эффекта. Почему? Создаю запрос, который должен выкидывать ошибку — тоже никакой реакции.
Вот код:
static void Main(string[] args)
{
SqlConnection conn = new SqlConnection();
conn.ConnectionString = "";
SqlCommand scmd = new SqlCommand("SELECT * FROM Department", conn);
conn.Open();
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(scmd);
da.TableMappings.Add("Table", "Department");
da.Fill(ds);
DataRow dr = ds.Tables["Department"].Rows[0];
dr.BeginEdit();
dr[1] = "Changed name";
dr.EndEdit();
DAL dal = new DAL();
dal.Update(conn, ds);
conn.Close();
}
public class DAL
{
public void Update(SqlConnection conn, DataSet ds)
{
da.TableMappings.Add("Table", "Department");
da.UpdateCommand = new SqlCommand(
"UPDATE Department SET nname=la-la-la, tnumber=15, vieworder=15 ", conn);// +
//"WHERE id_department=@id_department");// AND "+
//"name=@oldname AND tnumber=@oldtnumber AND vieworder=@oldvieworder");
da.UpdateCommand.CommandType = CommandType.Text;
da.Update(ds, "Department");
}
}
Уже нашёл ошибку. Надо было подставить объект SqlConnection в UpdateCommand.
Здравствуйте, kvadratik, Вы писали:
K>Уже нашёл ошибку. Надо было подставить объект SqlConnection в UpdateCommand.
Хотя странно, он у меня уже стоял... Шаманство..