Database 如何从AS/400(IBM iSeries)-VB加速SELECT查询。网络编程

Database 如何从AS/400(IBM iSeries)-VB加速SELECT查询。网络编程,database,vb.net,ibm-midrange,Database,Vb.net,Ibm Midrange,我不是程序员,我只需要非常基本的查询就可以从同一个表中获取信息(所以在我的程序中只需要使用SELECT语句) 我试着 从MAINSYSTEM.INFOR INFOR中选择INFOR.PFAC、INFOR.PPAR,其中PPAR='240XXX2A' 但返回值需要3分钟,而当我使用iSeries的数据传输时,速度非常快。有什么方法可以加快查询速度吗 我使用Driver={Client Access ODBC Driver(32位)}进行连接 我有一个按钮,当我按下那个按钮时,它将获取数据并显示到g

我不是程序员,我只需要非常基本的查询就可以从同一个表中获取信息(所以在我的程序中只需要使用SELECT语句)

我试着
从MAINSYSTEM.INFOR INFOR中选择INFOR.PFAC、INFOR.PPAR,其中PPAR='240XXX2A'

但返回值需要3分钟,而当我使用iSeries的数据传输时,速度非常快。有什么方法可以加快查询速度吗

我使用
Driver={Client Access ODBC Driver(32位)}
进行连接

我有一个按钮,当我按下那个按钮时,它将获取数据并显示到gridView

    Dim MyODBCConnection As New Odbc.OdbcConnection("Driver={Client Access ODBC Driver (32-bit)};" & _
    "System=163.201.28.55 ;Default Collection=bpcshv81.PEXPLOSNA;")

    'Open the connection
    MyODBCConnection.Open()
    Dim Table_BOM As New DataTable
    Dim Table_BOM_Fill As New Odbc.OdbcDataAdapter("SELECT PEXPLOSNA.PFAC , PEXPLOSNA.PPAR FROM    MAINSYSTEM.INFOR  PEXPLOSNA WHERE ppar = '240XXX2A'", MyODBCConnection)

    Table_BOM_Fill.Fill(Table_BOM)
    DataGridView1.DataSource = Table_BOM

请IBM DB管理员为您建立索引。

延迟的一部分可能是打开连接

也许你可以试着先打开它,在你甚至还没有显示按钮之前,把你的开销放在一边

当然,这可能意味着您也希望移动到关闭连接的位置。您希望打开连接一次,完成后只关闭一次

您可能希望使用iSeries Access提供的.NET数据提供程序


检查您是否正在使用最新版本的iSeries Access,并确保已安装修补程序。您的iSeries Access版本可能比系统的操作系统版本更新,但您不希望相反。

您使用什么VB代码检索数据?我只需按下一个按钮,它就会将数据加载到GridView是否每次都需要3分钟?当您使用数据传输时,您是否在ppar上指定了选择标准?您是否试图显示完整的分级物料清单?如果是这样,您可能需要一种更复杂的查询类型,称为递归或层次查询。但是让我们先解决这个问题,嗯?;-)如果他使用文件传输,同样的事情他会得到快速响应。