我不明白妳想要什麽代碼。
那麽我的理解是
您現在有兩個表,表1和表2。
您在表1中選擇壹行,並將所選行添加到表2中。
如果是這樣,那麽方法就是
運行環境VB2008(。網)
假設窗體的名稱是Form1,您添加了六個控件。
表控件DataGridView 1,DataGridView 2
按鈕控制四個按鈕1,按鈕2,按鈕3,按鈕4。
然後清除表單中的所有代碼,使用我的代碼。
進口系統。Data.OleDb
公共類表單1
public leaf filename As String = CurDir()& amp;" \Access.mdb " '這裏是數據庫文件的路徑和名稱,妳可以自己修改。
public leaf form name as string = " projects " '這是數據庫中要讀取的表的名稱。
public leaf password as string = " leaf soft password " '這裏是數據庫密碼。如果妳沒有密碼,就照做。
公共葉數據1作為數據表
公共葉數據2作為數據表
值得壹提的是,前兩次給妳的代碼裏都包含了這壹行。其實這句臺詞在前兩次是沒用的。這壹行是增行時需要的壹行的類,忘記刪除了。這次正好需要,讓妳更好的理解。
Dim LeafOleDbConnection作為OleDbConnection
Dim LeafOleDbCommand作為OleDbCommand
Dim LeafOleDbDataAdapter作為OleDbDataAdapter
dim leaf command builder As OleDbCommandBuilder
私有子表單1 _ Load(ByVal sender As System。對象,ByVal e作為系統。EventArgs)處理MyBase。負荷
按鈕1。Text = "閱讀"
按鈕2。Text = "保存"
按鈕3。Text = "刪除"
按鈕4。Text = "傳輸線"
末端接頭
private Sub button 1 _ Click(ByVal sender As System。對象,ByVal e作為系統。EventArgs)處理按鈕1。點擊
嘗試
Dim LeafITemp為整數
LeafOleDbConnection = New oledb connection(" Provider = Microsoft。Jet . OLEDB.4.0數據源= " & amp葉子文件名& amp";"& amp" Jet OLEDB:數據庫密碼= ' " & amp樹葉密碼& amp;")
LeafOleDbDataAdapter = New oledb dataadapter(" SELECT * FROM " & amp;LeafFormName,LeafOleDbConnection)
LeafData1 =新數據表
LeafData2 =新數據表
LeafOleDbDataAdapter。Fill(LeafData1)
DataGridView1。DataSource = LeafData1
For LeafITemp = 0到LeafData1。列數- 1
LeafData2。Columns.Add(LeafData1。列(LeafITemp)。列名)
然後
DataGridView2。DataSource = LeafData2
將LeafError捕獲為異常
MsgBox("讀取數據失敗,錯誤號:" &;呃。數量和數量。Chr(10)“錯誤原因是:“&;LeafError消息)
結束嘗試
末端接頭
private Sub button 2 _ Click(ByVal sender As System。對象,ByVal e作為系統。EventArgs)處理Button2。點擊
保存()
末端接頭
private Sub button 3 _ Click(ByVal sender As System。對象,ByVal e作為系統。EventArgs)處理Button3。點擊
Dim LeafITemp為整數
嘗試
For LeafITemp = 0到LeafData1。行數。計數- 1
如果LeafData1。行數(LeafITemp)。RowState & lt& gtDataRowState。然後刪除了
如果LeafData1。行數(LeafITemp)。Item(0) = DataGridView1(0,DataGridView1。當前行索引)。那就值了
LeafData1。行數(LeafITemp)。刪除()
保存()
出口接頭
如果…就會結束
如果…就會結束
然後
MsgBox("找不到要刪除的行,可能它已經不存在。")
將LeafError捕獲為異常
MsgBox("刪除數據失敗,錯誤號:" &;呃。數量和數量。Chr(10)“錯誤原因是:“&;LeafError消息)
結束嘗試
末端接頭
子保存()
LeafOleDbCommand = New oledb command(" SELECT * FROM " & amp;LeafFormName,LeafOleDbConnection)
LeafOleDbDataAdapter =新OleDbDataAdapter
LeafCommandBuilder = New OleDbCommandBuilder(LeafOleDbDataAdapter)
LeafOleDbCommand。CommandType = CommandType。文本
LeafOleDbDataAdapter。SelectCommand = LeafOleDbCommand
嘗試
LeafOleDbDataAdapter。更新(LeafData1。GetChanges)
LeafData1。接受更改()
將LeafError捕獲為異常
如果微軟。VisualBasic.Left(LeafError。消息,5)& lt;& gt那麽“值不能為空”
MsgBox("未能保存數據,錯誤號為:" &;呃。數量和數量。Chr(10)“錯誤原因是:“&;LeafError消息)
其他
MsgBox("表中的數據沒有改變。")
如果…就會結束
結束嘗試
末端接頭
private Sub button 4 _ Click(ByVal sender As System。對象,ByVal e作為系統。EventArgs)處理Button4。點擊
嘗試
Dim LeafITemp為整數
LeafNewRow = LeafData2。新行
對於LeafITemp = 0至LeafData2。列數- 1
LeafNewRow。item(leaf itemp)= DataGridView1(leaf itemp,datagridview 1。當前行索引)。價值
然後
LeafData2。Rows.Add(LeafNewRow)
將LeafError捕獲為異常
MsgBox("傳輸線路失敗,錯誤號:" &;呃。數量和數量。Chr(10)“錯誤原因是:“&;LeafError消息)
結束嘗試
末端接頭
結束類
哈哈,我在出差。這幾天我可能沒空。
過幾天沒貼我再做。