2015-07-24 2 views
0

Я хочу, чтобы одни и те же ценности формируют свою базу данных поэтому я использую этот запрос:SQL инъекции для оператора выбора

SELECT NormalComputers 
FROM usb_compliance 
WHERE ATC = 'CMB' 
ORDER BY date DESC 
    OFFSET 0 ROWS FETCH NEXT 1 ROWS ONLY 

Использование этого я хочу, чтобы получить так много значения, так что я планирую использовать метод инъекции SQL пожалуйста, помогите мне, как создать этот

Если я могу использовать метод инъекции можно использовать функцию она должна быть, как это

Private Function query(ByVal values As String, ByVal atc As String, ByVal no As Integer) 
    Dim connetionString As String 
    Dim connection As SqlConnection 
    Dim command As SqlCommand 
    Dim sql As String 
    connetionString = "Server=CTV-WEBDEVEXG;Database=usb;Trusted_Connection=True;" 
    sql = "SELECT @values FROM usb_compliance WHERE [email protected] ORDER BY date DESC OFFSET @no ROWS FETCH NEXT 1 ROWS ONLY" 
    connection = New SqlConnection(connetionString) 
    Try 
     command = New SqlCommand(sql, connection) 
     With command 
      .Connection.Open() 
      MsgBox("done !!!") 
      .CommandType = CommandType.Text 
      .Parameters.Add("@values", SqlDbType.DateTime).Value = values 
      .Parameters.Add("@atc", SqlDbType.NVarChar).Value = atc 
      .Parameters.Add("@NormalComputers", SqlDbType.Int).Value = no 
     End With 

     command.ExecuteNonQuery() 
     command.Dispose() 
     connection.Close() 

    Catch ex As Exception 

    End Try 
    Return sql 
End Function 

Я попытался таким образом, но его не работает так, пожалуйста, помогите мне по нац is

ответ

0

параметр @values относится к названию поля, которое вы хотите получить. Поэтому он должен быть строкой, а не DateTime (несмотря на то, что этот тип данных может быть DateTime).

... 
.Parameters.Add("@values", SqlDbType.NVarChar).Value = values 
... 

получить ряды пострадавших:

Dim numRows as Integer 
... 
.. 
numRows=command.ExecuteNonQuery() 
+0

свою работу, но как я могу вернуть SQL выполняется значение в функции? –

+0

использовать sqldatareader, как показано на моем правлении – apomene

+0

'// ... reader.GetString (0)' не знаю !!! , так что я хочу вернуть eader bot sql nah? –

Смежные вопросы