Inventory というテーブルがあり、その最初の行を削除したいと考えています。そのために、InventoryDAL という名前のクラスを作成しました。コードは次のとおりです。
public class InventoryDAL
{
private string cnString = string.Empty;
private SqlDataAdapter da = null;
public InventoryDAL(string connectionString)
{
cnString = connectionString;
da = new SqlDataAdapter("Select CarID, Make, Color, PetName From Inventory",
connectionString);
SqlCommandBuilder builder = new SqlCommandBuilder(da);
da.DeleteCommand = builder.GetDeleteCommand();
da.InsertCommand = builder.GetInsertCommand();
da.UpdateCommand = builder.GetUpdateCommand();
}
public DataTable Inventory()
{
DataTable dt = new DataTable();
da.Fill(dt);
return dt;
}
public void UpdateInventory(DataTable modifiedTable)
{
da.Update(modifiedTable);
}
}
また、それを試すために小さなプログラムを作成しました:
class Program
{
static void Main(string[] args)
{
InventoryDAL inv = new InventoryDAL(@"Data Source=MYPC;Initial Catalog=AutoLot;Integrated Security=True;Pooling=False");
DataTable dt = inv.Inventory();
dt.Rows.RemoveAt(0);
inv.UpdateInventory(dt);
Console.ReadKey(true);
}}
しかし、それは機能していません。.Update()
いくつかの試行の後、データを挿入するときにのみ機能することに気付きました。