1

ADOを介して、次のクエリを実行するのが好きです。

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

次に、名前、addess、zipを変数に割り当てて、後でプログラムで割り当てることができるようにします。VB.NET ADOでこれを行うにはどうすればよいですか?

4

4 に答える 4

8

このような何かを試してみてください:

  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

また、where句の値のパラメータ化を検討する必要があります。

于 2012-06-01T20:17:33.757 に答える
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
于 2012-06-01T20:13:22.140 に答える
0

次のように、SQLDatareaderからSqlCommandを実行します。

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

と値を取得するには:

While vDatosVen.Read() 
   vUser = vDatosVen("user")
End While
于 2012-06-01T20:18:20.770 に答える
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
于 2017-02-20T19:11:08.377 に答える