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

我试试SELECT INFOR.PFAC , INFOR.PPAR FROM MAINSYSTEM.INFOR INFOR WHERE ppar = '240XXX2A'
但是返回值需要 3 分钟,而当我使用 iSeries 的数据传输时,速度非常快。有什么办法可以加快查询速度吗?

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

当我按下 then 按钮时,我有一个按钮,它将获取数据并显示到 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

最佳答案

部分延迟可能是打开连接。

或许您可以先尝试打开它,在显示按钮之前将您的开销排除在外。

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

您可能想要使用 iSeries Access 提供的 .NET 数据提供者。

检查您使用的是最新的 iSeries Access 版本,并确保它安装了补丁。您的 iSeries Access 版本可能比系统的操作系统版本更新,但您不希望它反过来。

关于database - 如何从 AS/400 (IBM iSeries) - VB 加速 SELECT 查询。网络编程,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16040719/

10-13 06:48