0

プログラムでdbfファイルのデータを更新する必要があります。ただし、「演算子/オペランドタイプの不一致」というエラーが表示されたままになります。ここにサンプルコードがあります:

    Dim con As OleDbConnection = New OleDbConnection("Provider=vfpoledb;Data Source=C:\folder\paytran.dbf;Collating Sequence=machine;")
    Try


        Dim strSQL As String = "UPDATE paytran.dbf SET workhr = 20  WHERE empno = 102"
        Dim cmd As OleDbCommand = New OleDbCommand(strSQL, con)
        con.Open()
        Dim myDA As OleDbDataAdapter = New OleDbDataAdapter(cmd)
        Dim myDataSet As DataSet = New DataSet()
        ' Using DataAdapter object fill data from database into DataSet object
        myDA.Fill(myDataSet, "MyTable")
        ' Binding DataSet to DataGridView
        DGV.DataSource = myDataSet.Tables("MyTable").DefaultView
        con.Close()
        con = Nothing
    Catch ex As Exception
        MessageBox.Show(ex.Message, "Error Select Data")

    Finally
        If con IsNot Nothing Then
            con.Close()
        End If
    End Try

私を助けてください..

4

2 に答える 2

0

その接続文字列。接続文字列は、データファイルが配置されているPATHのみを指している必要があります。そうすると、すべてのSQLベースのコマンドは、デフォルトでそのパス内の.DBFテーブルを表示できます(サブパスが存在する場合は転送できます)。

Data Source=C:\folder

それ以外の

Data Source=C:\folder\paytran.dbf

したがって、「C:\ folder」に30個のテーブルがある場合、必要に応じてそれらすべてからクエリを実行できるようになりました。

于 2013-03-26T10:04:52.733 に答える
-1

DBFを明示的に開いたり閉じたりする必要があります。試す:

Dim strSQL As String = "Use paytran in 0 shared;UPDATE paytran SET workhr = 20  WHERE empno = 102;use in select('paytran')"
于 2013-03-25T08:27:09.963 に答える