ASP.Net C#を使用してWebアプリケーションを開発しました。このアプリケーションでGridViewからASP.Netのデータベースにデータを保存および更新する方法は?
私は次のコードのようODBCDataAdapter使用して、データとそれを埋めるのGridViewがあります: -
protected void Page_Load(object sender, EventArgs e)
{
ConnectionString1 = "DSN=DataSourceName;SRVR=Server;DB=Database;UID=User;PWD=Password;";
OdbcConnection1 = new OdbcConnection(ConnectionString1);
try
{
OdbcConnection1.Open();
CommandText1 = "SELECT * FROM TableName";
DataSet1 = new DataSet();
OdbcDataAdapter1 = new OdbcDataAdapter(CommandText1, OdbcConnection1);
OdbcCommandBuilder1 = new OdbcCommandBuilder(OdbcDataAdapter1);
OdbcDataAdapter1.Fill(DataSet1, "TableName");
DataSet1.AcceptChanges();
myGridView.DataSource = DataSet1;
myGridView.DataMember = "TableName";
myGridView.DataBind();
}
catch (Exception Exception1)
{
Response.Write("<br/>Exception1 Message: " + Exception1.Message);
}
OdbcConnection1.Close();
}
このコードは正常に動作し、GridViewコントロールにデータセットからのデータをロードします。
私の問題は、GridViewでいくつかの変更を行い、ボタンクリックや特定の条件のイベントに応じて変更する必要があるDataSetを使用して、これらの変更を実際のデータベースに保存したいということです。
私は以下を使用してみますが、結果として0を返すように動作しませんでした。
OdbcDataAdapter1.UpdateCommand = new OdbcCommand( "UPDATE TableName"、OdbcConnection1);
OdbcDataAdapter1.Fill(DataSet1,"TableName");
int g = OdbcDataAdapter1.Update(DataSet1,"TableName");
Response.Write("g: " + g);
私はまた、次のことを試してみました: - 私は変更はGridViewの中に表示されますが、私は何も変更を見つけていないデータベースをチェックするたびとして
OdbcCommandBuilder1 = new OdbcCommandBuilder(OdbcDataAdapter1);
try
{
int k = OdbcDataAdapter1.Update(DataSet1, "TableName");
DataSet1.AcceptChanges();
Response.Write("k: " + k);
}
catch (Exception Except)
{
Response.Write("Except: " + Except.Message);
}
..