我正在尝试将查询结果自动保存到文本文件,而不使用ODBC窗口连接在VB.NET中循环读取器对象。 但是我找不到了!
这就是我到目前为止的尝试:
mCmd = New OdbcCommand( _
"SELECT my_id FROM " & myTable & " WHERE myflag='1' \o 'c:/a_result.txt'", mCon)
n = mCmd.ExecuteNonQuery
但那根本不起作用。 请建议或编写示例如何获得它。
第二...... 理想情况下,通过将结果保存到文本中,我会在变量“n”中获得一些已保存的行。 至于现在我只得到0或1取决于查询是否成功。
编辑:
经过一番战斗,我找到了一种方法,或多或少取得了成功。
要txt文件:
mCmd = New OdbcCommand( _
"COPY (SELECT my_id FROM " & myTable & " WHERE myFlag='1' " & _
"ORDER BY my_id) TO 'c:/a_result.txt' DELIMITER AS '|'", mCon)
到csv文件:
mCmd = New OdbcCommand( _
"COPY (SELECT my_id FROM " & myTable & " WHERE myFlag='1' " & _
"ORDER BY my_id) TO 'c:/a_result.csv' WITH CSV", mCon)
这有效,但我无法转义引号和'\'所以我在输出文件中有双重符号 如果有经验的人知道如何实现转义和更改csv文件的分隔符,我很乐意在给定的示例中看到它。
查询后的变量'n'包含许多导出的行。