1
不知道我在做什麼錯在這裏不斷收到「InTime」附近的語法錯誤。 sqlmodDA.Update(sqlmodDS.Tables(「XXX」)) 一個按鈕獲取數據(subBindDataGridView)在數據網格視圖上顯示,然後編輯下一個按鈕(CommitChanges)將更改寫入數據庫。 由於加入了Select命令,無法使用命令生成器。我最好去一個全存儲過程解決方案嗎?正確的更新命令datagridview W /加入選擇命令SQL服務器
Imports System.Data
Imports System.Data.SqlClient
Module SQLSever
Private sqlmodCon As SqlConnection
Private sqlmodDA As SqlDataAdapter
Private sqlmodTA As New DataTable
Private sqlmodDS As New DataSet
Sub subBindDataGridView()
Dim strConStr As String
Dim SQLState As String
Dim SQLUpdate As String
strConStr = "Server=sql2008;Database=TimeClock;User ID=VBA;Password=CanIJustUseDA0;"
sqlmodCon = New SqlConnection(strConStr)
sqlmodCon.Open()
SQLState = "SELECT * FROM dbo.tblEvents INNER JOIN dbo.tblPersons ON dbo.tblEvents.PersonID = dbo.tblPersons.PersonID;"
SQLUpdate = "UPDATE dbo.tblEvents" & _
"SET InTime = @InTime, LunchStart = @LunchStart, LunchFinish = @LunchFinish, OutTime = @OutTime WHERE Pkey = @Pkey;"
sqlmodDA = New SqlDataAdapter(SQLState, sqlmodCon)
sqlmodDA.UpdateCommand = New SqlCommand(SQLUpdate, sqlmodCon)
sqlmodDA.UpdateCommand.Parameters.Add("@InTime", SqlDbType.DateTime, 8, "InTime")
sqlmodDA.UpdateCommand.Parameters.Add("@LunchStart", SqlDbType.DateTime, 8, "LunchStart").SourceColumn = "LunchStart"
sqlmodDA.UpdateCommand.Parameters.Add("@LunchFinish", SqlDbType.DateTime, 8, "LunchFinish").SourceColumn = "LunchFinish"
sqlmodDA.UpdateCommand.Parameters.Add("@OutTime", SqlDbType.DateTime, 8, "OutTime").SourceColumn = "OutTime"
sqlmodDA.UpdateCommand.Parameters.Add("@PKey", SqlDbType.BigInt, 8, "Pkey").SourceColumn = "PKey"
sqlmodDA.Fill(sqlmodDS, "XXX")
Form1.DataBox.DataSource = sqlmodDS.Tables("XXX")
sqlmodCon.Close()
End Sub
Sub CommitChanges()
sqlmodCon.Open()
sqlmodDA.Update(sqlmodDS.Tables("XXX")) 'Error here
sqlmodDS.AcceptChanges()
sqlmodCon.Close()
End Sub
前端模塊
謝謝你修復它,免費啤酒,如果你曾經在費爾班克斯阿拉斯加地區。 –