我正在尝试直接将文本文件导入Postgres,但使用ODBC。我意识到这有点奇怪,但ODBC在修复/忽略文本文件中的错误方面做得很好,Postgres的Copy命令非常非常挑剔。我可以使用Copy,而不能使用ODBC。
我目前正在分两步执行此操作。 ODBC导入访问,然后从Access访问Postgres,但我最近学习了on MSDN我可以一步完成这一步但是我遇到了SQL问题。
以下是我正在使用的代码:
Dim TextConnection As New System.Data.OleDb.OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=c:\PathToTextFile;Extended Properties=""Text;HDR=No""")
Dim TextCommand As System.Data.OleDb.OleDbCommand
TextCommand = New System.Data.OleDb.OleDbCommand("SELECT * INTO [ODBC;Driver={PostgreSQL};" & _
" Server=server;Database=database;Uid=UserName;Pwd=Password;].[TableName] FROM [textfile.txt]", TextConnection)
TextCommand.ExecuteNonQuery()
我收到此错误:Query input must contain at least one table or query.
我不是在这里调试这个。它现在也可能是可能的,这很有用。