這是我的代碼從數據庫加載數據到DataGrid中如何編輯Datagrid的記錄,並在數據庫
Private Sub Records_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim connString As String = "Provider=Microsoft.Ace.Oledb.12.0; Data Source=" & My.Application.Info.DirectoryPath.ToString() & "\BackUp\Database3.Accdb;"
Dim MyConn As OleDbConnection
Dim da As OleDbDataAdapter
Dim ds As DataSet
Dim tables As DataTableCollection
Dim source1 As New BindingSource
MyConn = New OleDbConnection
MyConn.ConnectionString = connString
ds = New DataSet
tables = ds.Tables
da = New OleDbDataAdapter("Select * from [userinfo] ORDER BY ID", MyConn)
da.Fill(ds, "userinfo") 'Change items to your database name
Dim cb = New OleDbCommandBuilder(da)
Dim view As New DataView(tables(0))
source1.DataSource = view
DataGridView1.DataSource = view
End Sub
Private Sub btnCreate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCreate.Click
If RequiredEntry() = True Then
Return
End If
Try
Dim cn As New OleDbConnection("Provider=Microsoft.Ace.Oledb.12.0; Data Source=" & My.Application.Info.DirectoryPath.ToString() & "\BackUp\Database3.Accdb;")
If cn.State = ConnectionState.Closed Then cn.Open()
Dim sSQL As String = "insert into [userinfo]([username],[password],[FirstName],[LastName],[Account]) values(@username,@password,@FirstName,@LastName,@Account)"
Dim cmd As OleDbCommand = New OleDbCommand(sSQL, cn)
' UserName
If txtPassword.Text = txtConfirm.Text Then
Dim username As OleDbParameter = New OleDbParameter("@username", OleDbType.VarWChar, 50)
username.Value = txtUser.Text.ToString()
cmd.Parameters.Add(username)
Else
MsgBox("Password not matched")
End If
'password
Dim password As OleDbParameter = New OleDbParameter("@password", OleDbType.VarWChar, 50)
password.Value = txtPassword.Text.ToString()
cmd.Parameters.Add(password)
'First Name
Dim FirstName As OleDbParameter = New OleDbParameter("@FirstName", OleDbType.VarWChar, 50)
FirstName.Value = txtFirstName.Text.ToString()
cmd.Parameters.Add(FirstName)
' Last Name
Dim LastName As OleDbParameter = New OleDbParameter("@LastName", OleDbType.VarWChar, 50)
LastName.Value = txtLastName.Text.ToString()
cmd.Parameters.Add(LastName)
'Account
Dim Account As OleDbParameter = New OleDbParameter("@Account", OleDbType.VarWChar, 50)
Account.Value = cboAccount.GetItemText(cboAccount.SelectedItem)
cmd.Parameters.Add(Account)
If cmd.ExecuteNonQuery() Then
cn.Close()
MessageBox.Show("New User is Added successfully.", "Record Saved")
Call clear()
Me.Hide()
FileMaintenance.Show()
Else
MsgBox("New User Addition Failed ", MsgBoxStyle.Critical, "Addition Failed")
Return
End If
Catch ex As Exception
Exit Sub
End Try
End Sub
Private Sub NewUser_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
e.SuppressKeyPress = e.Control
If e.KeyCode = Keys.Enter Then
SendKeys.Send("{tab}")
End If
End Sub
,這是我刪除
Private Sub cmdDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmdDelete.Click
Dim connString As String = "Provider=Microsoft.Ace.Oledb.12.0; Data Source=" & My.Application.Info.DirectoryPath.ToString() & "\BackUp\Database3.Accdb;"
Dim MyConn As OleDbConnection
Dim da As OleDbDataAdapter
Dim ds As DataSet
Dim tables As DataTableCollection
Dim source1 As New BindingSource
Dim rows As String
Try
MyConn = New OleDbConnection
MyConn.ConnectionString = connString
ds = New DataSet
tables = (ds.Tables)
rows = DataGridView1.SelectedRows(0).Cells(0).Value.ToString()
da = New OleDbDataAdapter("Delete * from [userinfo] where ID=" & rows, MyConn)
da.Fill(ds, "userinfo")
Records_Load(sender, e)
Catch ex As Exception
MessageBox.Show("cannot delete empty records")
End Try
如何編輯我的數據從datagrid視圖以及我的數據庫 也如何鎖定數據網格輸入字段意外
對不起,我有一個混合SQL和OLEDB教程。將使用您的代碼並將其更改爲oledb。感謝它,並會在這裏再次評論,如果我有問題。再次感謝 –