下列範例示範如何明確設定 DataAdapterUpdateCommand,以更新已修改的資料列。請注意,UPDATE 陳述式中 WHERE 子句指定的參數是設定為使用 SourceColumnOriginal 值。這一點相當重要,因為 Current 值可能已經修改,而不符合資料來源中的值。Original 值是用來從資料來源填入 DataTable 的值。

// Assumes connection is a valid SqlConnection.SqlDataAdapter dataAdpater = new SqlDataAdapter("SELECT CategoryID, CategoryName FROM Categories", connection);dataAdpater.UpdateCommand = new SqlCommand("UPDATE Categories SET CategoryName = @CategoryName " +"WHERE CategoryID = @CategoryID" , connection);dataAdpater.UpdateCommand.Parameters.Add("@CategoryName", SqlDbType.NVarChar, 15, "CategoryName");SqlParameter parameter = dataAdpater.UpdateCommand.Parameters.Add("@CategoryID", SqlDbType.Int);parameter.SourceColumn = "CategoryID";parameter.SourceVersion = DataRowVersion.Original;DataSet dataSet = new DataSet();dataAdpater.Fill(dataSet, "Categories");DataRow row = dataSet.Tables["Categories"].Rows[0];row ["CategoryName"] = "New Category";dataAdpater.Update(dataSet, "Categories");


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 pagichang 的頭像
    pagichang

    pagichang

    pagichang 發表在 痞客邦 留言(0) 人氣()