Есть ли простой способ вернуть завершенный оператор SQL после подстановки параметра? То есть, я хочу вести журнал всех SQL, запускаемых этой программой.
Или, если я захочу это сделать, я просто захочу избавиться от параметров и выполнить весь запрос по старинке, в одной большой строке?
Простой пример: я хочу зафиксировать вывод:
ВЫБРАТЬ подкатегорию ИЗ EnrollmentSubCategory WHERE catid = 1
.. из этого кода:
Dim subCatSQL As String = "SELECT subcatId FROM EnrollmentSubCategory WHERE catid = @catId"
Dim connectionString As String = "X"
Dim conn As New SqlConnection(connectionString)
If conn.State = ConnectionState.Closed Then
conn.Open()
End If
Dim cmd As New SqlCommand(subCatSQL, conn)
With cmd
.Parameters.Add(New SqlParameter("@catId", SqlDbType.Int, 1))
End With
Console.WriteLine("Before: " + cmd.CommandText)
cmd.Prepare()
Console.WriteLine("After: " + cmd.CommandText)
Я предполагал, что Prepare () выполнит замены, но, видимо, нет.
Мысли? Совет? Заранее спасибо.