我正在創建一個員工計時錶,他們必須通過按下timein和timeout按鈕來插入他們的計時錶。對於timein,我在數據庫中爲該人員創建了一條新記錄,對於超時,我正在使用UPDATING命令更新該現有記錄。這裏是我的代碼:VB.NET:更新Ms Access中的記錄
Dim cb As New OleDb.OleDbCommandBuilder(ssda)
cb.QuotePrefix = "["
cb.QuoteSuffix = "]"
con.ConnectionString = dbProvider & dbSource
con.Open()
Dim str As String
str = "UPDATE emp_timing SET emp_timing.emp_timeout = '" & OnlyTime & "' WHERE (((emp_timing.emp_code)='" & TextBox1.Text & "') AND ((emp_timing.day)=" & Now.ToString("MM/dd/yyyy") & "))"
Dim cmd As OleDbCommand = New OleDbCommand(str, con)
Try
cmd.ExecuteNonQuery()
cmd.Dispose()
con.Close()
MsgBox("Data added")
TextBox1.Clear()
TextBox2.Clear()
TextBox1.Focus()
ComboBox1.SelectedIndex = -1
Catch ex As Exception
MsgBox(ex.Message)
End Try
我的代碼工作正常,但問題是它沒有更新數據庫中的記錄。
Access中字段的數據類型: emp_code = Number,emp_timeout = Text,day = Date/Time。
這是因爲你不使用參數,但你連接字符串離開轉換到任何的區域設置爲發生。 – Steve
我應該如何解決這個問題? @Steve –
您的字段是emp_timeout和datetime類型的日期嗎? – Steve