Vb.net Npgsql BeginTextImport

Vb.net Npgsql BeginTextImport,vb.net,postgresql,visual-studio,npgsql,Vb.net,Postgresql,Visual Studio,Npgsql,我正在制作一个程序,可以用visualstudio的visualbasic脚本连接到我在PosgresSQL中的数据库。我希望能够像在PSQL SHELL控制台上一样导入.csv文件,但由于某些原因,我不能。我一直在浏览各种网站和文档,但是没有一种具体的方式来使用互联网上的BeginExtImport。所有的例子都用C#表示。文档太含蓄了,我能理解真正的参数是什么。这是我代码中的内容: 将cnn设置为字符串 cnn=“服务器=localhost;端口=5432;用户ID=postgres;数据库

我正在制作一个程序,可以用visualstudio的visualbasic脚本连接到我在PosgresSQL中的数据库。我希望能够像在PSQL SHELL控制台上一样导入.csv文件,但由于某些原因,我不能。我一直在浏览各种网站和文档,但是没有一种具体的方式来使用互联网上的
BeginExtImport
。所有的例子都用C#表示。文档太含蓄了,我能理解真正的参数是什么。这是我代码中的内容:

将cnn设置为字符串
cnn=“服务器=localhost;端口=5432;用户ID=postgres;数据库=basedatos;密码=123456”
作为NpgsqlConnection的Dim pgCn=新的NpgsqlConnection(cnn)
pgCn.Open()
pgCn.begintextinport(“\copy datos.muestreo from'C:\Users\crist\Desktop\ARCHIVOS FASA\INSERTS\inventarios.csv'”&vbCrLf&“with delimiter”,“csv header quote E'\”)
但当我运行它时,我得到了:

System.ArgumentException:'必须包含STDIN命令的副本
参数名称:copyFromCommand


正如上面@sami kuhmonen所说,
\copy
是一个psql命令,不能在Npgsql(或任何其他数据库驱动程序)中使用

,如果要从PostgreSQL server上可用的文件导入数据,可以在尝试时使用
COPY table_name from filename
,但只需使用
ExecuteNonQuery
即可执行


BeginTextImport()
保留用于从客户端计算机(即运行Npgsql的位置)复制数据。在这种情况下,必须使用
从STDIN中复制表名
。有关更多信息,请参阅。

正如上面的@sami kuhmonen注释所述,
\copy
是一个psql命令,不能在Npgsql(或任何其他数据库驱动程序)中使用

,如果要从PostgreSQL server上可用的文件导入数据,可以在尝试时使用
COPY table_name from filename
,但只需使用
ExecuteNonQuery
即可执行


BeginTextImport()
保留用于从客户端计算机(即运行Npgsql的位置)复制数据。在这种情况下,必须使用
从STDIN中复制表名
。查阅更多信息。

我已经弄明白了,我不知道如何在代码中输入值,但我找到了解决方案,使用writer for file
为文件中的每一行写入
我已经弄明白了,我不知道如何在代码中输入值,但是我发现
使用writer for file
为文件中的每一行写入

BeginTextImport
的解决方案是在自己内部写入数据,而不是从文件复制数据。此外,也没有用于psql的SQL命令\copy。查看文档如何使用它们,但我假设您只想以常规命令的形式从文件中运行副本。您发布的代码显然不是VBScript。这是VB.net吗?VBA?是vb.net,我在visual studio的窗体上使用它,命令SQL命令是Copy,但服务器命令是\Copy,我试图通过npgsql连接从我的应用程序中导入csv文件,但不起作用,更确切地说,我不了解导入函数的工作原理,我不知道是否还需要其他函数。文档没有对其进行清楚的解释,示例仅在C#
BeginExtImport
上,用于自己编写数据,而不是从文件复制数据。此外,也没有用于psql的SQL命令\copy。查看文档如何使用它们,但我假设您只想以常规命令的形式从文件中运行副本。您发布的代码显然不是VBScript。这是VB.net吗?VBA?是vb.net,我在visual studio的窗体上使用它,命令SQL命令是Copy,但服务器命令是\Copy,我试图通过npgsql连接从我的应用程序中导入csv文件,但不起作用,更确切地说,我不了解导入函数的工作原理,我不知道是否还需要其他函数。文档没有清楚地解释它,示例只在C上#