我有一个表,它是所有VarChar()字段。
我使用以下SQL填充数据集(使用vb.net):
Select * From archive_naerns90_2006_q3.NAERNS90_Calls Where siteid = 'NAERNS90-02-627303'
我收到此错误:
Input string was not in a correct format.Couldn't store <02-627303> in agencyid Column. Expected type is Double.
当我从PgAdmin运行此查询时,它工作正常。我正在其他几十个表上运行相同的代码,没有问题。
错误中引用的值02-627303是该记录的agencyid列中的值,但是表中没有Double字段。完全公开-有两个,但我将它们从Double更改为VarChar,而代理商编号都不是。
另一个缺点是,这仅在该表中的某些记录上发生。
我猜我的桌子有些损坏。我复制了表格,但是副本有相同的问题。而且由于它可以在PgAdmin中运行,但不能从我的代码中运行,所以它也可能与npgsql有关。
编辑:有人要求我在问题区域附近添加代码,因为这看起来像是插入错误。我在此功能中根本不做任何插入。
SQL = "Select * From " & MlocRow("currentdb") & "." & SubTablesArr(Y) & " Where siteid = '" & DataRow("siteid") & "'"
Adapter.SelectCommand = New NpgsqlCommand(SQL, MLConnect)
Adapter.Fill(subDT)
我的连接字符串是:
"HOST=192.168.0.133;DATABASE=masterlists;USER ID=myuser;PASSWORD=mypassword"
谢谢,布拉德
您可以键入将那个col显式转换为varchar()
...