顯示具有 Adapter 標籤的文章。 顯示所有文章
顯示具有 Adapter 標籤的文章。 顯示所有文章

2023年10月23日 星期一

V120602C - DataAdapter - 利用 DataTable(dt1) 更新後端資料庫

 目的: V120602C - DataAdapter -利用 DataTable(dt1) 更新後端資料庫 - DataAdapter - 不透過 SQL

處理說明: 1>利用 Tmp_dt1 來更新資料庫, 不用 INSERT / UPDATE SQL 來更新資料庫
                                   2> 透過   Adapter   來更新後端資料庫    
                              OracleDataAdapter adapter = new OracleDataAdapter(command);
                      3> 由 adapter 取得 Tmp_dt1 的資料
                            adapter.Fill(Tmp_dt1);
                      4> 建立 adapter 相關 Script (Insert/Update/Delete) : OracleCommandBuilder
                           OracleCommandBuilder scb = new OracleCommandBuilder(adapter);   
                      5>將 dt 的資料更新回資料
                           adapter.Update(Tmp_dt1);
                           Tmp_dt1.AcceptChanges(); 
                        

1>*.cs
OracleCommand command = new OracleCommand(Tmp_Sql);
OracleConnection conn = new OracleConnection(DBService.ConnectionString(DBLINK));
command.Connection = conn;
OracleDataAdapter adapter = new OracleDataAdapter(command);
adapter.Fill(Tmp_dt1);
OracleCommandBuilder scb = new OracleCommandBuilder(adapter);
int Tmp_cnt = Tmp_dt1.Rows.Count;
-->
DataRow Tmp_dr = Tmp_dt1.NewRow();
Tmp_dr["QDRNO"] = Tmp_QDRNO;
Tmp_dr["PSAPNO"] = Tmp_PSAPNO;
Tmp_dt1.Rows.Add(Tmp_dr);
adapter.Update(Tmp_dt1);
Tmp_dt1.AcceptChanges();