我有一列具有不同字符类型的数据类型。我们正在使用Npgsql -Version 4.0.4
和PostgreSQL version 11.3
String value = "Shaun Hollis_002\\Top of Personal Folders\002\\� 35% Off
Harlem Globetrotters - 3 Events in Denver!.msg";
try
{
StringBuilder sb = new StringBuilder();
sb.AppendLine("Insert INTo tbltemptest1 (c_value) values(@value);");
using (NpgsqlConnection con = new NpgsqlConnection(DBConnectionString))
{
con.Open();
using (NpgsqlCommand command = new NpgsqlCommand(sb.ToString(), con))
{
command.Parameters.Add("@value", NpgsqlTypes.NpgsqlDbType.Varchar).Value = value;
command.ExecuteNonQuery();
}
}
}
catch (Exception ex)
{
throw;
}
执行插入查询会引发异常
用于编码“ UTF8”的无效字节序列:0x00
答案 0 :(得分:0)
错误几乎说明了这一点:PostgreSQL拒绝接受其中包含0x00(空字符)的字符串。您将需要先清理输入,然后再将其发送到PostgreSQL。