【问题标题】:How to return the record from an access query如何从访问查询中返回记录
【发布时间】:2017-04-03 16:17:03
【问题描述】:

我目前正在完成一个项目,其中一系列组合框有望链接回单个数据库记录,我将获取 5 个值,并且我有以下代码如何输出它返回的记录,以便我可以使用在表格中找到的值不是用户输入的,在后面的代码中?

 myConnection.ConnectionString = My.Forms.Main.connString
 myConnection.Open()
 Dim match As String = "SELECT CBrand, CModel, CSpec,BodyStyle,CNoOfDoors, CEngineSize, COTR, TransmissionCost 
 FROM CarFigures WHERE CBrand = cbBrand.text
 CModel  = cbModel.text
 CSpec = cbSpec.text 
 CNoOfDoors = cbNoOfDoors.text
 EngineSize = cbEngineSize.text"

【问题讨论】:

    标签: sql vb.net ms-access


    【解决方案1】:

    打开连接并进行查询后,您需要执行以下操作:

    myConnection.ConnectionString = My.Forms.Main.connString
    myConnection.Open()
    Dim match As String = "SELECT CBrand, CModel, ..."
    
    ' define data adapter, data set, fill data set then loop'
    Dim da As New OleDb.OleDbDataAdapter
    Dim ds As New Dataset
    Dim row As System.Data.DataRow
    Dim count As Integer
    da.SelectCommand = New OleDb.OleDbCommand(match, myConnection)
    da.Fill(ds, "myTable") 
    count = ds.Tables("myTable").Rows.Count
    
    While count > -1
        row = ds.Tables("myTable").Rows.Item(count)
        ' this is where you take row.Item(0) and do something with it... '
        count = count - 1
    End While
    
    myConnection.Close()
    

    【讨论】:

    • 谢谢,对不起,我还在学习 vb 的基础知识,我只是想知道第三行的 ...需要在“mytable”中命名表吗??
    • 不确定哪一行是第三行;你可以给你的桌子起任何名字
    • 如果我的回答对您有帮助,请考虑投票/接受回答
    • 它说'dim match as string = "select...." 我是写 select 和 from 部分 sql 命令还是只写查询的 select 部分
    • 你会写完整的东西 - SELECT x FROM t WHERE t.x >0 等。我想你可以抓住一个更大的数据集并在 WHILE 循环中过滤掉它,但这确实不是很有效。跨度>
    猜你喜欢
    • 2010-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-07
    相关资源
    最近更新 更多