插入Firebird数据库C#

时间:2017-05-15 14:37:55

标签: c# firebird

FbCommand fbCmm = 
      new FbCommand("INSERT INTO PRODUTO
                   (CODIGO,EAN,DESCRICAO,VAL_PRODUTO,VAL_CUSTO,CAT_PRECO)" 
                   + "Values (@txt_codigo.Text, @txt_ean, @txt_descricao,
                   @txt_valPro, @txt_valCus, @txt_catPre)", ConexaoFirebird.Conexao);

enter image description here]

这句话有什么问题? 我在其他课程中进行了开放式连接 - ConexaoFirebird.Conexao();

2 个答案:

答案 0 :(得分:1)

您正在执行参数化查询而不提供这些参数的值。见the documentation

FbCommand cmd = new FbCommand("insert into t1(id, text) values (@id, @text);");
cmd.CommandType = CommandType.Text;

cmd.Parameters.Add("@id", 123);
cmd.Parameters.Add("@text", "my string");

cmd.ExecuteNonQuery();

此处,他们将值123"my string"分别绑定到名为idtext的参数。

另请注意,参数名称通常会被修改为字母数字,因此txt_codigo.Text可能不会起作用。

答案 1 :(得分:0)

你应该对十进制,字符串字段类型使用quote,你的语句是正确但不清楚,你可以使用sql命令构建器创建清晰的sql文本,或者你可以使用连接的Command对象。