簡單實用的DataSet更新資料庫的類+總結(c#)
using System;
using System.Data;
using System.Data.SqlClient;
using System..Forms;
namespace winApplication
{
public class sqlAccess
{
//與SQL Server的連線字串設定
private string _connString;
private string _strSql;
private SqlCommandBuilder sqlCmdBuilder;
private DataSet ds = new DataSet();
private SqlDataAdapter da;
public sqlAccess(string connString,string strSql)
{
this._connString=connString;
}
private SqlConnection GetConn()
{
try
{
SqlConnection Connection = new SqlConnection(this._connString);
Connection.Open();
return Connection;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message,"資料庫連線失敗");
throw;
}
}
//根據輸入的SQL語句檢索資料庫資料
public DataSet SelectDb(string strSql,string strTableName)
{
try
{
this._strSql = strSql;
this.da = new SqlDataAdapter(this._strSql,this.GetConn());
this.ds.Clear();
this.da.Fill(ds,strTableName);
return ds;//返回填充了資料的DataSet,其中資料表以strTableName給出的字串命名
}
catch (Exception ex)
{
MessageBox.Show(ex.Message,"資料庫操作失敗");
throw;
}
}
//資料庫資料更新(傳DataSet和DataTable的物件)
public DataSet UpdateDs(DataSet changedDs,string tableName)
{
try
{
this.da = new SqlDataAdapter(this._strSql,this.GetConn());
this.sqlCmdBuilder = new SqlCommandBuilder(da);
this.da.Update(changedDs,tableName);
changedDs.AcceptChanges();
return changedDs;//返回更新了的資料庫表
}
catch (Exception ex)
{
MessageBox.Show(ex.Message,"資料庫更新失敗");
throw;
}
}
使用說明總結:
1. GetConn方法建立一個資料庫連線,返回SqlConnection。
2.使用的select命令中必須包含主鍵,這點大家都知道的!
3. this.da.Fill(ds,strTableName) 填充資料集
4.構造CommandBuilder物件時,將DataAdapter物件作為建構函式引數傳入:
this.sqlCmdBuilder = new SqlCommandBuilder(da);
5. 在呼叫UpdateDs()更新資料庫前,請檢查changedDs是否已經被更新過,用changedDs.[tableName] GetChanges() != null;
6.用this.da.Update(changedDs,tableName)方法更新資料,然後呼叫changedDs.AcceptChanges()才能真正的更新資料庫,呼叫 changedDs.RejectChanges() 取消更新。
[@more@]來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/631872/viewspace-863563/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- php簡單操作mysql資料庫的類PHPMySql資料庫
- Java 新特性總結——簡單實用Java
- 簡單的C#日誌類C#
- 帶你實現一個簡單的MYSQL資料庫生成實體類工具MySql資料庫
- 常見形式 Web API 的簡單分類總結WebAPI
- Pygame的簡單總結GAM
- GPU 渲染管線簡單總結(網上資料總結)GPU
- Redis設計與實現閱讀總結(二)單機資料庫的實現Redis資料庫
- 基於json資料格式實現的簡單資料庫——jsonDBJSON資料庫
- JavaScript實現簡單的雙向資料繫結JavaScript
- Flink的DataSet基本運算元總結
- 資料庫分庫分表的總結資料庫
- 簡單好用的資料庫管理:DBeaverEE mac啟用版資料庫Mac
- 簡簡單單的總結,意如生活的平淡
- 類别範本的簡單應用(用於儲存不同型別資料的類容器)型別
- PHP 實現簡單的資料採集併入庫PHP
- 標準庫 http 包的簡單實用HTTP
- 關於資料庫鎖的總結資料庫
- SpringBoot基於資料庫實現簡單的分散式鎖Spring Boot資料庫分散式
- C#連線Oracle資料庫,通過EF自動生成與資料庫表相關的實體類C#Oracle資料庫
- C# 簡單的學生資訊管理系統,好看的UI介面,與資料庫互動C#UI資料庫
- Winhex簡單資料恢復與取證及實驗一總結資料恢復
- 使用Mongoose類庫實現簡單的增刪改查Go
- MySQL資料庫的基本使用簡單易懂MySql資料庫
- HTTP/2 特性的簡單總結HTTP
- HTML簡單知識的總結HTML
- RediSearch的簡單使用與總結Redis
- Oracle資料庫實訓後的大三上總結Oracle資料庫
- C++ 手撕--基本資料結構的簡單實現C++資料結構
- 資料庫的統計(select)確實會影響資料庫的更新(update)的資料庫
- 用c#建立與資料庫的連線 c#連sqlserverC#資料庫SQLServer
- MySQL資料庫總結MySql資料庫
- 【C#入門超簡單】簡單的專案實踐C#
- 【資料庫】簡單聊聊資料庫可以做什麼,有什麼用?資料庫
- 簡單介紹C#使用物件序列化類庫MessasgePackC#物件
- 對GaussDB資料庫和資料管理的簡單介紹資料庫
- 資料庫表連線的簡單解釋資料庫
- 簡單的BBS論壇 資料庫設計資料庫
- 資料庫簡單的一些原理概念資料庫