1. 程式人生 > >把dataset中的資料更新回 資料庫

把dataset中的資料更新回 資料庫

,C#使用TheSQL Server .NET Data Provider中的SqlDataAdapter填充DataSet的具體實現方法:

  程式碼清單01:

SqlConnection sqlConnection1 = new SqlConnection ( "Data Source=localhost ;Integrated Security=SSPI ;Initial Catalog=Northwind" ) ;
//建立資料連線
SqlCommand selectCMD = new SqlCommand ( "SELECT CustomerID , CompanyName FROM Customers" , sqlConnection1 ) ;
//建立並初始化SqlCommand物件
SqlDataAdapter sqlDataAdapter1 = new SqlDataAdapter ( ) ;
custDA.SelectCommand = selectCMD ;
sqlConnection.Open ( ) ;
//建立SqlDataAdapter物件,並根據SelectCommand屬性檢索資料
DataSet dsDataSet1 = new DataSet ( ) ;
sqlDataAdapter1.Fill ( dsDataSet1 , "Customers" ) ;
//使用SqlDataAdapter的Fill方法填充DataSet
sqlConnection.Close ( ) ;
//關閉資料連線


  對於其他資料提供者的DataAdapter,具體的實現檢索資料庫中的資料並填充DataSet的實現方法類似於以上方法。

  2. 通過DataAdapter物件操作DataSet實現更新資料庫:

  DataAdapter是通過其Update方法實現以DataSet中資料來更新資料庫的。當DataSet例項中包含資料發生更改後,此時呼叫Update方法,DataAdapter 將分析已作出的更改並執行相應的命令(INSERT、UPDATE或 DELETE),並以此命令來更新資料庫中的資料。如果DataSet中的DataTable是對映到單個數據庫表或從單個數據庫表生成,則可以利用 CommandBuilder 物件自動生成 DataAdapter 的DeleteCommand、InsertCommand 和 UpdateCommand。使用DataAdapter物件操作DataSet實現更新資料庫具體的實現方法,只需把下面的程式碼清單02新增到程式碼清單01之後,二者合併即可實現刪除Customers資料表中第一行資料:

  程式碼清單02: 

SqlCommandBuilder sqlCommandBuilder1 = new SqlCommandBuilder ( sqlDataAdapter1 ) ;
//以sqlDataAdapter1為引數來初始化SqlCommandBuilder例項
dsDataSet1.Tables["Customers"].Rows[0].Delete ( ) ;
//刪除DataSet中刪除資料表Customers中第一行資料
sqlDataAdapter1.Update ( dsDataSet1 ,"Customers" ) ;
//呼叫Update方法,以DataSet中的資料更新從資料庫
dsDataSet1.Tables["Customers"].AcceptChanges ( ) ;


  由於不瞭解DataSet結構和與資料庫關係,很多初學者往往只是更新了DataSet中的資料,就認為資料庫中的資料也隨之更新,所以當開啟資料庫瀏覽時發現並沒有更新資料,都會比較疑惑,通過上面的介紹,疑惑應當能夠消除了。

相關推薦

dataset資料更新 資料庫

,C#使用TheSQL Server .NET Data Provider中的SqlDataAdapter填充DataSet的具體實現方法:   程式碼清單01: SqlConnection sqlConnection1 = new SqlConnection ( "D

Dataset全為空的列去掉,只留下有資料的列

再datatable 中已經讀到資料表,將在griddataview 中顯示,但是有些列資料是全空,我打算把空的去掉。 private void BindDataToSimpleGrid(DataTable dt) { DataTa

HTML頁面資料顯功能

在第一種方式中:頁面回顯,點選detail,頁面詳情會顯示一個新的頁面。這個是通過連結將頁面連結過去的。同時這個連結還連結到了一個新的js檔案中。用去調取後端的介面。 { title : '操作',

Java將Excel表格資料匯入至資料庫的表

        上一節介紹了Java將資料庫表中資料匯出至Excel表格,那麼本節來介紹它的逆過程,也就是將Excel表格中的資料逐行匯入資料庫中的表中,依然需要使用Apache的POI,上一節已經說過也附了這個jar包的下載地址,這一節就不過多的說,直接講如

內表資料更新資料庫

一行資料更新到資料庫 MODIFY zqmt002  FROM ls_zqmt002. 一個表的資料更新到資料庫(一行先放到表,批量更新)   MODIFY zmmt009a FROM TABLE&

利用groovy資料匯出成txt或csv

膠水語言就是膠水,寫起也挺快的.這個指令碼主要是從資料庫中把表中的資料匯出來生成檔案.而不用每次都開啟資料庫編輯器去手工收集.然後結合強大的指令碼(shell,bat)等基本就可以實現定時生成最新資料文字了.目前這個gr

java獲取excel資料並存入資料庫

1--獲取excel檔案檔案所在路徑       由於公司的平臺框架封裝比較嚴重,獲取路徑方法可能略有不同,不必太放心上。 //獲取平臺附件配置檔案附件存放路徑 String realPath = F

怎樣 excel 的資料匯入到資料庫裡面去

相關文章1. 把 excel 另存為 .csv 格式2. 用 Notepad 開啟 .csv 檔案, 第一行就是所有的欄位3. 建立表結構create table yu_rt_01 as  select Transaction_Id,Last_Update_Date,Last

小例子:java利用poi讀取excel資料並匯入資料庫

問題描述: 資料夾下有若干excel檔案,檔名為10.教育局.xls   11.衛生院.xls     ................有很多;中間的漢字為單位名稱,需要匯入資料庫,每個單位名稱要有一個單位id匹配;每個excel中有若干個sheet頁的名字,每個名字即為科

IE11 vue +webpack 專案資料更新後頁面沒有重新整理問題

vue +webpack 專案中資料更新後頁面沒有重新整理問題,ie11下,如果GET請求請求相同的URL,預設會使用之前請求來的快取資料,而不會去請求介面獲取最新資料,我用的解決方法是在每個請求傳送前

自動批量更新DataSet資料資料庫

[WebMethod(Description = "Update服務提供的方法,將包含修改後資料的DateSet與本地資料庫同步更新,成功返回更新的行數,失敗返回-1。"), SoapHeader("currentUser")] public

惠州學院-資料庫實驗3-資料庫資料更新

    計算機科學系實驗報告(首頁) 課程名稱 資料庫系統概論 班級 14計科2班 實驗名稱 資料庫中資料的更新

更新資料庫資料時出現: Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column To disable safe m

在資料庫中更新資料時報錯: You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column  To disable safe mode, toggle

JDBC更新資料庫資料

JDBC的功能基本上歸結為三件事,即建立資料庫連線,傳送SQL語句和處理查詢結果。 JDBC詳細步驟: 1.導包(先將驅動包拷貝到專案目錄下,再解壓) 路徑:D:\oracle\prod

oracle一個表指定的欄位資料更新到另外一張表裡面

一、建立表結構 create table test1( id varchar2(10) , val varchar2(20), name varchar2(20)); create table test2( id varchar2(10), val varchar2(20) ,

mysql某一列的資料更新到另一列(涉及到多張表的資料

假設有三張表A,B,C現在要把C表中的一列資料更新到A表中,而A和C之間還有張B表。假設要把C表中的id更新到A表中,那麼就可以這樣寫:UPDATE A AINNER JOIN B ON A.xxx = B.xxxINNER JOIN C ON B.xxx= C.xxxSET

SQL不同伺服器資料庫之間資料操作(當在一個伺服器的某張表資料更新時,將更新值通過觸發器插入到另一個伺服器的指定表

第一步:在建立觸發器的伺服器上建立連結伺服器 建立連結伺服器有兩種方法:1.通過SQL語言建立,2.通過資料庫管理工具建立,下面分別進行詳細介紹: 1.通過SQL語言建立 通過SQL語言建立連結伺服器方法 2.通過資料庫管理工具建立(這裡以SQL SER

VB .NETExcel資料匯入SQL SERVER資料庫

其實不算原創,論壇裡有人發的,我正好專案寫到這裡,缺的語句較多,無法執行,我補充了一下,可以簡單的運行了,測試了一下,速度還不錯。 VS2015可用,自己新增窗體和控制元件吧,只需要一個OpenFileDialog和Button,預設檔案中帶有欄位名。 Public Cla

在只有MySQL資料庫的情況下,如何SQL Server 資料指令碼(.sql檔案)匯入Mysql的表

圖片被抽了,醉了。。反正大概的解決辦法就是找出二者的不同(可以在MySQL中建立一個同SQL Server 一樣的資料庫,然後匯出,對比指令碼的不同),然後利用Notepad++的【查詢再替換】的功能,把SQL Server指令碼逐步替換成MySQL的指令碼一步步替換就行。先

解析XML文件,並資料存到資料庫

public void addInitData() {         try {             //解析init.xml文件             Document doc = new SAXReader().read(Thread.currentThread().getContextClass