2012-06-01 2 views
1

через ADO, я хотел бы сделать следующий запрос:нужно получить значение из запроса SQL

select name, address, zip from terr where id = '33334' 

мне нравится то, чтобы присвоить имя, addess, почтовый индекс к переменным, так что я могу назначить его позже в моей программе , Как это сделать с помощью VB.NET ADO?

ответ

4

Попробуйте somethign как это:

Dim dbName As String 
    Dim dbAddress As String 
    Dim dbZip As String 
    Using connObj As New SqlClient.SqlConnection("<connectionString>") 
    Using cmdObj As New SqlClient.SqlCommand("select name, address, zip from terr where id = '33334'", connObj) 
     connObj.Open() 
     Using readerObj As SqlClient.SqlDataReader = cmdObj.ExecuteReader 
      'This will loop through all returned records 
      While readerObj.Read 
       dbName = readerObj("name").ToString 
       dbAddress = readerObj("address").ToString 
       dbZip = readerObj("zip").ToString 
       'handle returned value before next loop here 
      End While 
     End Using 
     connObj.Close() 
    End Using 
    End Using 

Кроме того, вы должны смотреть на параметрирования значение ИНЕКЕ.

2

Для заполнения DataTable вам нужна база данных (я предполагаю MS Sql-Server), соединение и DataAdapter. Тогда у вас есть все, что вам нужно. Вот пример:

Public Function GetUser(UserId As Int32) As DataRow 
    Using con = New SqlConnection(My.Settings.RM2ConnectionString) 
     Using cmd = New SqlCommand("select name, address, zip from terr where id = @id", con) 
      cmd.Parameters.AddWithValue("@id", UserId) 
      Dim da = New SqlDataAdapter(cmd) 
      Dim tblUser = New DataTable 
      da.Fill(tblUser) 
      If tblUser.Rows.Count <> 0 Then 
       Return tblUser(0) 
      Else 
       Return Nothing 
      End If 
     End Using 
    End Using 
End Function 
0

выполнить SqlCommand из SqlDataReader, как:

Dim vVendedor As New SqlCommand("SELECT user FROM users", mConeccion) 
vDatosVen = vVendedor.ExecuteReader 
vVendedor = Nothing 

и получить тэ значение:

While vDatosVen.Read() 
    vUser = vDatosVen("user") 
End While 
0

Вот что я сделал ...

Private Sub btn_Connect_Click(sender As Object, e As EventArgs) Handles btn_Connect.Click 
    Dim sql_connection As New MySqlConnection 
    Dim sql_query As New MySqlCommand 
    Dim sql_result As MySqlDataReader 
    sql_connection.ConnectionString = "Server=localhost;Database=hidden;Uid=root;Pwd=;" 
    sql_query.Connection = sql_connection 
    sql_connection.Open() 
    sql_query.CommandText = "SELECT Entry,name FROM table WHERE entry=1;" 
    sql_result = sql_query.ExecuteReader 
    If sql_result.HasRows Then 

     Do While sql_result.Read() 
      Dim query_result As String 
      query_result = sql_result("name") 
      MsgBox(query_result) 
     Loop 
    Else 
     MsgBox("No results found.") 
    End If 
Смежные вопросы