【发布时间】:2009-12-10 16:09:29
【问题描述】:
有什么方法可以访问发送到 SQL 服务器的准备好的语句?
Dim params(1) As OleDb.OleDbParameter
params(0) = New OleDb.OleDbParameter("@ID", OleDb.OleDbType.VarChar, 50)
params(0).Value = guiItemsGridView.Rows(e.RowIndex).Cells("ID").Value
params(1) = New OleDb.OleDbParameter("@SavedValue", OleDb.OleDbType.VarChar, 50)
params(1).Value = guiItemsGridView.Rows(e.RowIndex).Cells("Saved Value").Value
Dim QueryString As String = "UPDATE Items SET [Saved Value]=@SavedValue WHERE ID=@ID"
myDatabase.objAdapter.UpdateCommand = New OleDb.OleDbCommand(QueryString, DatabaseConnection)
myDatabase.objAdapter.UpdateCommand.Parameters.AddRange(params)
myDatabase.objAdapter.UpdateCommand.Prepare()
Debug.Print(myDatabase.objAdapter.UpdateCommand.CommandText)
我正在寻找一种在添加参数后访问准备好的查询的方法。准备好命令后,CommandText 仍然包含基本查询UPDATE Items SET [Saved Value]=@SavedValue WHERE ID=@ID,即使参数已被传递。
我会发现编写由这段代码执行的查询日志对于调试此应用程序的其他区域很有用。
【问题讨论】:
标签: sql parameters oledb sqlcommand oledbcommand