我正在成功地插入表格,但由于某种原因,字段处于混乱的位置。使用 MS Access Database 2010 开发 Visual Studio 2012 C#。
(没有足够的代表直接发布图像,所以请耐心等待链接)这就是表格结构的样子(抱歉,不能发布超过 2 个链接)
(列 = 字段类型):
- Codigo = 文本
- 数据赛达(又名 @data)= 日期/小时
- Entidade = 文本
- 数据 Ent = 数据/小时
- GT Ent = 文本
- Estado = 文本
- GT 赛达 = 文本
- 天文台 = 文本
- 请购单 = 编号
- 证书 = 文本
- 结果 = 文本
- 选择=是/否
- Tipo int = 文本
这是正确行(如行)的表中的一个很好的例子 好行
这是我在插入混乱行中得到的一行
这就是我制作插入的方式
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();
我在这里做错了什么?
由于您尚未在 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)";