Вставлены поля не в том месте в таблице C# OleDB
Я делаю успешную вставку в таблицу, но по какой-то причине поля находятся в неправильном положении. Работа на Visual Studio 2012 C# с базой данных MS Access 2010.
(У вас недостаточно представителей, чтобы публиковать изображения непосредственно, поэтому, пожалуйста, имейте в виду ссылки) Это то, на что похожа структура таблицы (Извините, но не могу опубликовать более 2 ссылок)
(столбец = тип поля):
- Codigo = текст
- Данные Сида (ака @data) = дата / час
- Энтидада = текст
- Data Ent = данные / час
- GT Ent = текст
- Estado = текст
- GT saida = текст
- observacaoes = текст
- реквизитант = номер
- Сертификат = текст
- resultado = текст
- selecionar = Да / Нет
- типо int = текст
Это хороший пример в таблице правильной строки, такой как строка Good Row
Это строка, которую я получаю с INSERT Messed up Row
Вот как я делаю ВСТАВКУ
OleDbCommand cmd = l.CreateCommand();
cmd.Parameters.Add(new OleDbParameter("@codigo", cal.CodEtiq.ToString()));
cmd.Parameters.Add(new OleDbParameter("@data", cal.Data));
cmd.Parameters.Add(new OleDbParameter("@entidade", cal.EntidadeCal));
cmd.Parameters.Add(new OleDbParameter("@observacao", cal.Observacao));
cmd.Parameters.Add(new OleDbParameter("@certificado", cal.Certificado));
cmd.Parameters.Add(new OleDbParameter("@resultado", cal.Resultado));
cmd.Parameters.Add(new OleDbParameter("@selecionar", cal.Selecionar));
cmd.CommandText = "INSERT INTO [Movimento Ferramentas] VALUES (@codigo, @data , @entidade, null, null, 'Calibração', null, @observacao, null, @certificado, @resultado, @selecionar , null)";
result = cmd.ExecuteNonQuery();
Что я здесь не так делаю?
1 ответ
Поскольку вы не указали столбцы в вашем INSERT
утверждение, это вставка значений на основе порядка столбцов в таблице. Не совсем уверен, каков ваш фактический порядок столбцов, но вы можете решить эту проблему, указав столбцы в INSERT
заявление.
cmd.CommandText = "INSERT INTO [Movimento Ferramentas] "+
"(Codigo , [Data saida], ...............) " + // columns
"VALUES (@codigo, @data , @entidade, null, null, 'Calibração', null, @observacao, null, @certificado, @resultado, @selecionar , null)";