内联更新语句用变量替换字符串

时间:2017-01-26 18:32:22

标签: sql .net sql-server vb.net

我正在尝试使用更新语句来更新某条记录,但是我遇到了困难。我想用变量值替换'user'和'timestamp'但是当我提供内联变量时我收到错误,有人可以帮我实现这个功能。我使用sql server作为我的dbms。

变量:

Dim timeStamp As String = DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss")

Dim user As String = GetUserName()

更新声明:

strsql = strsql & " Update Activity Set userName = 'user', timeDate = 'timeStamp' Where noteKey = " & lngNoteKey

2 个答案:

答案 0 :(得分:2)

您需要使用parameterized queries来执行此操作。

strsql = strsql & " Update Activity Set userName = @user, timeDate = @date Where noteKey = " & lngNoteKey

然后在执行时将参数添加到命令中:

yourQuery.Parameters.Add(new ObjectParameter("user", user));
yourQuery.Parameters.Add(new ObjectParameter("date", timeStamp));

答案 1 :(得分:1)

strsql = strsql & " Update Activity Set userName = '" & user & "', timeDate = '" & timeStamp & "' Where noteKey = " & lngNoteKey

试试吧。将数据连接到字符串中。