C# C和PostgreSQL插入到

C# C和PostgreSQL插入到,c#,postgresql,C#,Postgresql,我有这个: NpgsqlConnection c = new NpgsqlConnection(conx.getConexion()); c.Open(); NpgsqlDataAdapter da = new NpgsqlDataAdapter("Insert into \"Marca\" (\"NombreMarca\") values ('" + cbMarca.Text + "')", c); c.Close(); 表格如下: CREATE SEQUENCE idmarca INC

我有这个:

NpgsqlConnection c = new NpgsqlConnection(conx.getConexion());
c.Open();
NpgsqlDataAdapter da = new NpgsqlDataAdapter("Insert into \"Marca\" (\"NombreMarca\") values ('" + cbMarca.Text + "')", c);
c.Close();
表格如下:

CREATE SEQUENCE idmarca
  INCREMENT 1
  MINVALUE 1
  MAXVALUE 2147483647
  START 10
  CACHE 1;

CREATE TABLE "Marca"
( "idMarca" integer NOT NULL DEFAULT nextval('idmarca'::regclass),
  "NombreMarca" character varying(100) NOT NULL,
  CONSTRAINT "PKMarca" PRIMARY KEY ("idMarca" ),
  CONSTRAINT "UNombreMarca" UNIQUE ("NombreMarca" )
);
问题是,当我尝试插入到表中时,由于某种原因,什么都没有发生。这是一个try-catch,因此不会从查询中生成异常。 cbMarca是一个组合框。已测试与数据库的连接

此外,这项工作:

cbMarcaB.Items.Clear();
DataTable dt = cons.Select("Select \"NombreMarca\" From \"Marca\" Order by \"NombreMarca\"");
for (int i = 0; i < dt.Rows.Count; i++)
     {
         cbMarcaB.Items.Add(dt.Rows[i]["NombreMarca"]);
     }

因此,我不知道问题出在哪里…

我认为您不应该使用NpgsqlDataAdapter来执行插入,而应该使用npgsql命令。请参见下面的示例


我看到了,但图书馆里没有适配器。这就是我使用DataAdapter的原因。我必须导入什么引用才能使用适配器?对不起,在他的代码顶部,是private NpgsqlDataAdapter NpAdapter;是否检查了结果查询字符串?
string insertQuery = "INSERT INTO npdata VALUES (@key, @ndata)";
NpAdapter.InsertCommand = new NpgsqlCommand(insertQuery, conn);

NpParam = NpAdapter.InsertCommand.Parameters.Add("@key", NpgsqlTypes.NpgsqlDbType.Text);
NpParam.SourceColumn = "key";
NpParam.SourceVersion = DataRowVersion.Current;

NpParam = NpAdapter.InsertCommand.Parameters.Add("@ndata", NpgsqlTypes.NpgsqlDbType.Bigint);
NpParam.SourceVersion = DataRowVersion.Current;
NpParam.SourceColumn = "ndata";