C# 标准表达式中数据类型不匹配.求解~
if(x1.Tables[0].Rows.Count>0){for(inti=0;i<x1.Tables[0].Rows.Count;i++){stringstrSql=...
if(x1.Tables[0].Rows.Count >0)
{
for (int i = 0; i < x1.Tables[0].Rows.Count; i++)
{ string strSql = "insert into 抽查表5(期号,员工编号,姓名,性别,二级部门,三级部门,四级部门,五级部门,间直接,部门,年龄,省份,出生日期,资格,录用日期,学历)"
+ "values('"+ textBox1.Text + "','"
+ x1.Tables[0].Rows[i][0] + "','"
+ x1.Tables[0].Rows[i][1] + "','"
+ x1.Tables[0].Rows[i][2] + "','"
+ x1.Tables[0].Rows[i][3] + "','"
+ x1.Tables[0].Rows[i][4] + "','"
+ x1.Tables[0].Rows[i][5] + "','"
+ x1.Tables[0].Rows[i][6] + "','"
+ x1.Tables[0].Rows[i][7] + "','"
+ x1.Tables[0].Rows[i][8] + "','"
+ x1.Tables[0].Rows[i][9] + "','"
+ x1.Tables[0].Rows[i][10] + "','"
+ x1.Tables[0].Rows[i][11] + "','"
+ x1.Tables[0].Rows[i][12] + "','"
+ x1.Tables[0].Rows[i][13] + "','"
+ x1.Tables[0].Rows[i][14] + "')";
cmd = new OleDbCommand(strSql, conn);
cmd.ExecuteNonQuery(); //这里就提示标准表达式中的数据类型不匹配。
}
} 展开
{
for (int i = 0; i < x1.Tables[0].Rows.Count; i++)
{ string strSql = "insert into 抽查表5(期号,员工编号,姓名,性别,二级部门,三级部门,四级部门,五级部门,间直接,部门,年龄,省份,出生日期,资格,录用日期,学历)"
+ "values('"+ textBox1.Text + "','"
+ x1.Tables[0].Rows[i][0] + "','"
+ x1.Tables[0].Rows[i][1] + "','"
+ x1.Tables[0].Rows[i][2] + "','"
+ x1.Tables[0].Rows[i][3] + "','"
+ x1.Tables[0].Rows[i][4] + "','"
+ x1.Tables[0].Rows[i][5] + "','"
+ x1.Tables[0].Rows[i][6] + "','"
+ x1.Tables[0].Rows[i][7] + "','"
+ x1.Tables[0].Rows[i][8] + "','"
+ x1.Tables[0].Rows[i][9] + "','"
+ x1.Tables[0].Rows[i][10] + "','"
+ x1.Tables[0].Rows[i][11] + "','"
+ x1.Tables[0].Rows[i][12] + "','"
+ x1.Tables[0].Rows[i][13] + "','"
+ x1.Tables[0].Rows[i][14] + "')";
cmd = new OleDbCommand(strSql, conn);
cmd.ExecuteNonQuery(); //这里就提示标准表达式中的数据类型不匹配。
}
} 展开
2个回答
展开全部
参数年龄,出身日期可能不是字符字段,不需要再两端加 ‘ ’
OleDbCommand cmd =cnn.CreateCommand();
cmd.CommandText ="insert into 抽查表5 (期号,员工编号,姓名,性别,二级部门,三级部门,四级部门,五级部门,间直接,部门,年龄,省份,出生日期,资格,录用日期,学历) values" +
"@期号,@员工编号,@姓名,@性别,@二级部门,@三级部门,@四级部门,@五级部门,@间直接,@部门,@年龄,@省份,@出生日期,@资格,@录用日期,@学历)";
cmd.Parameters.Add("@期号", OleDbType.Integer, int.Parse(textBox1.Text));
cmd.Parameters.Add("@员工编号", OleDbType.VarChar, x1.Tables[0].Rows[i][0]);
……
cmd.Parameter.Add("@出生日期", OleDbTypeDBDate, DateTime.Parse( x1.Tables[0].Rows[i][11]));
……
cmd.ExecuteNonQuery();
更多追问追答
追问
我这边是对应的列不对,嘻嘻。还有rows前面要加上tables〔〕
谢谢
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |