有没有任何方法可以访问发送到SQL服务器的预准备语句?插入参数后检索SqlCommand/OleDbCommand查询?
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][email protected] WHERE [email protected]"
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][email protected] WHERE [email protected]
。
我会发现写这个代码块用于调试此应用程序的其他区域所执行的查询日志很有用。