我有一个计划,可以满足员工的休假申请。到目前为止,除了这段代码之外,一切都运行得很顺利:
cmd.CommandText = "UPDATE tblEmployee " & _
" SET EMP_PATERNITYCRED=" & Me.txtNumDays.Text & _
", EMP_LOGINDT='" & Me.dateToday.Value.Date & "'" & _
", [Reason for Leave]='" & Me.txtReason.Text & "'" & _
" WHERE EMP_LNAME=" & lblLastName.Text
cmd.ExecuteNonQuery()
此代码块的目的是更新数据库的tblEmployee
中的记录,并列出以下列。该错误指向cmd.ExecuteNonQuery()
,并显示No value given for one or more required parameters
。
我个人认为它是名为Reason for Leave
的列,因为它有空格而不是下划线。你觉得怎么样?
感谢那些能帮助我的人!
答案 0 :(得分:0)
你试过反引号吗?
ssh2_exec($connection, 'exit');
我很惊讶[]在mysql中不起作用。
答案 1 :(得分:0)
为了您自己的理智,请使用String.Format()函数:
Dim sql As String = "UPDATE tblEmployee SET EMP_PATERNITYCRED = {0}, EMP_LOGINDT = '{1}', [Reason for Leave] = '{2}' WHERE EMP_LNAME = '{3}'"
sql = String.Format(sql, Me.txtNumDays.Text, Me.dateToday.Value.Date, Me.txtReason.Text, lblLastName.Text)
cmd.CommandText = sql
cmd.ExecuteNonQuery()
这会使OP中缺少的单引号明显。