2014-06-26 2 views
1

я пытаюсь сделать этот динамический запрос SQL в vb.net, где я объявляю два переменные и передать ОТБОРНОЕ по каждого переменногоКак сделать динамический запрос sql в vb.net?

Dim cmd As New SqlCommand("Declare @val1 int " & _ 
          "Declare @val2 int " & _ 
          "SET @val1 = 'SELECT Count(*) from table1tbl'" & _ 
          "SET @val2 = 'SELECT Count(*) from table2tbl'", conn) 
    Dim rdr As SqlDataReader = cmd.ExecuteReader 
    rdr.Read() 
    Dim str1 = rdr("@val1") 
    Dim str2 = rdr("@val2") 
    rdr.Close() 

я знаю, этот код не right..so, как делает это право ? TNX заранее

ответ

2

Вы не можете сделать это с SqlCommand, так, чтобы выполнить свой код, который вы должны были бы создать хранимую процедуру и добавить в конце:

Select @val1, @val2 

Для возврата значения в качестве таблицу, которую вы создаете.

Я предполагаю, что вы делаете что-то более творческое, чем ваш фактический пример, но есть ли все-таки включение всего в ваш выбор? Правильный вариант должен пойти что-то вроде этого:

Выбрать (SELECT COUNT (*) из table1tbl), (SELECT COUNT (*) из table2tbl)

Это будет возвращать данные в формате, который вы хотите, так что вы может прочитать его с кодом, который вы опубликовали.

+0

aah..подробнее я его получаю .. много tnx приятель! приветствия! : D – user3211476

1
Dim sQuery as String 
Dim val1 
Squery = <a> SELECT Count(*) from table1tbl </a>.Value 
Using cmd As New SqlCommand(sQuery, con) 
    If cmd.Connection.State <> ConnectionState.Open Then 
    cmd.Connection.Open() 
    End If 
val1 = cmd.ExecuteScalar() 
End Using 
+0

что есть с этим бирка предмет? – user3211476

+0

«сво Multy линии строки например: Dim var1 As String var1 = ул Dim "ABC"= Здравствуйте, это первая линия И вы можете сделать это <%= var1 %> Ibra

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