あなたの解決策は確かに機能するので、@wqwに感謝します。
これは私の最初の選択肢であり、うまくいきました。
- 目的の列を含む空のファイル/テーブルを作成します。
- このファイルを「test.dbf」にコピーします。
- 入力されたデータファイル「リンク」からこれにレコードを挿入します。
Dim dbsWork As Database
Dim qrd As DAO.QueryDef
Dim szSqlString As String
Set dbsWork = OpenDatabase(szWorkDir, False, False, "FoxPro 2.5")
Dim szFieldList As String
szFieldList = "field1, field2, field3"
szSqlString = "INSERT INTO test SELECT " & szFieldList & " FROM link"
Set qrd = dbsWork.CreateQueryDef("", szSqlString)
qrd.Execute
Set qrd = Nothing
Set dbsWork = Nothing
But the following based on @wqw's suggestion is much better, as no predefined file is required
Private Sub Test1()
Dim dbsWork As Database
Dim qrd As DAO.QueryDef
Dim szSqlString As String
Set dbsWork = OpenDatabase(MyDataBasPath, False, False, "FoxPro 2.5")
Dim szFieldList As String
szSqlString = "ALTER TABLE work.dbf ADD COLUMN fred VARCHAR(30)"
Set qrd = dbsWork.CreateQueryDef("", szSqlString)
qrd.Execute
Set qrd = Nothing
Set dbsWork = Nothing
End Sub