0

OleDbCommand の 1 つのクエリで、異なるテーブルで 2 つの select ステートメントを実行できますか? 私は .dbf ファイルを読んでいて、その上にデータセットを埋めたいと思っています。

SELECT * FROM BILLHEAD SELECT * FROM BILLDETA

エラーが発生する

Syntax error in FROM clause.

これが私のコードです:

 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    oLoadDb("SELECT * FROM BILLHEAD " & vbCrLf & " SELECT * FROM BILLDETA")
    DataGridView1.DataSource = oDs.Tables(0).DefaultView 
    DataGridView2.DataSource = oDs.Tables(1).DefaultView

End Sub

Dim oDs As DataSet
Private Function oLoadDb(ByRef dbf_file As String)
    Try
        Dim FilePath As String = "D:\DBF"
        Dim SQLstr As String = dbf_file
        Dim ConnString As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & FilePath & _
        " ;Extended Properties=dBASE IV;User ID=Admin;Password="

        Try

            Dim DBFConn As New OleDbConnection(ConnString)
            DBFConn.Open()

            Dim DBFCommand As OleDbCommand = New OleDbCommand(SQLstr, DBFConn)
            Dim DBFDataReader As OleDbDataReader = DBFCommand.ExecuteReader(CommandBehavior.SequentialAccess)

            Dim daData As OleDbDataAdapter
            daData = New OleDbDataAdapter(SQLstr, DBFConn)
            oDs = New DataSet

            daData.Fill(oDs)
            DBFConn.Close()

        Catch ex As Exception
            Debug.WriteLine(ex.Message.ToString)
        End Try
    Catch ex As Exception

    End Try
End Function
4

2 に答える 2

0

以下を試して、バッチ実行

oLoadDb("SELECT * FROM BILLHEAD SELECT * FROM BILLDETA")

于 2013-12-04T07:54:11.637 に答える
0

両方のテーブルが同じデータ構造を持つ場合、次のことができます

SELECT * FROM BILLHEAD 
UNION
SELECT * FROM BILLDETA

テーブルからすべてのデータを取得するには

于 2013-12-04T07:50:48.607 に答える