1
//Query SQL
MySqlCommand command1 = new MySqlCommand("INSERT INTO Equipamento (equipamento, situacao, modelo, nr_serie, avaria, estado_equipamento, data, estado_reparacao, reincidente, ID)" +
"VALUES(@equipamento, @situacao @modelo, @nr_serie, @avaria, @estado_equipamento, @data, @estado_reparacao, @reincidente, @id)", mConn);
command1.Parameters.AddWithValue("@equipamento", comboequipamento.Text);
command1.Parameters.AddWithValue("@situacao", "Em diagnóstico");
command1.Parameters.AddWithValue("@modelo", tbmodelo.Text);
command1.Parameters.AddWithValue("@nr_serie", tbserie.Text);
command1.Parameters.AddWithValue("@avaria", tbavaria.Text);
command1.Parameters.AddWithValue("@estado_equipamento", tbestado.Text);
command1.Parameters.AddWithValue("@data", Convert.ToString(DateTime.Today.ToShortDateString()));
command1.Parameters.AddWithValue("@estado_reparacao", null);
command1.Parameters.AddWithValue("@reincidente", 1);
command1.Parameters.AddWithValue("@id", tbid.Text);


//Executa a Query SQL
command1.ExecuteNonQuery();
reincidentestr = true.ToString();
Atribuir_IDFichaHTML();

助けてもらえますか?が実行されColumn count doesn't match value count at row 1たときに取得します。command1

4

1 に答える 1

6

クエリは次のとおりです。

INSERT INTO Equipamento (equipamento, situacao, modelo, nr_serie, avaria, 
                         estado_equipamento, data, estado_reparacao, reincidente, ID)
        VALUES(@equipamento, @situacao @modelo, @nr_serie, @avaria,
               @estado_equipamento, @data, @estado_reparacao, @reincidente, @id)

valuesとの間にコンマがないため、ステートメントに必要な値よりも少ない値があり@situacaoます@modelo

INSERT INTO Equipamento (equipamento, situacao, modelo, nr_serie, avaria, 
                         estado_equipamento, data, estado_reparacao, reincidente, ID)
        VALUES(@equipamento, @situacao, @modelo, @nr_serie, @avaria,
               @estado_equipamento, @data, @estado_reparacao, @reincidente, @id)

これは、適切なフォーマットが問題を防いでいたであろうもう 1 つの例です。

于 2013-05-23T01:43:21.423 に答える