insert into Employee([Name],Gender,BirthDate,Degree,Department,Email,EmployedTime,Folk,IdentityID,Marital,Mobile,MSN,Native,PayCardName,PayCardNumber,Phone,Photo,Political,Position,Address,Re)values('测试人员','男',#1988-01-18 AM 11:15:07#,'大学及以上','123456789012345','[email protected]',#2010-10-18 AM 11:15:07#,'汉族','0','1215455','未婚','4454545','4454545','1234556','中国工商银行','1111111111111111111','245545-4545','','党员','','45454545','Test')刚刚查了下,保留字用[]括起来,日期类型用#,但是还是报错,请大家指点一下,谢谢!急等~

解决方案 »

  1.   

    insert into 21个参数  ,values后确是22个值
    不错才怪哥数了两遍,你自己再数数
      

  2.   

    我先把日期类型的排除掉
    使用以下Access语句还是提示insert语法错误
    insert into Employee([Name],Gender,Degree,Department,Email,Folk,IdentityID,Marital,Mobile,MSN,Native,PayCardName,PayCardNumber,Phone,Photo,Political,Position,Address,Re)values('Test','男','大学及以上','','','汉族','','','','','','','','-','','党员','','','')
    数过了,参数个数正确。
      

  3.   

    好吧,我就先插入一条记录试试 public static void Insert(string tableName, string fields, string values)
            {
                try
                {
                    string strSql = string.Empty;           
                    OleDbConnection connet1 = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;" +"Data Source=" + Constant.DB_PATH);          
                    connet1.Open();
                    strSql = "insert into Employee(Gender) values('男')";
                    OleDbCommand cmd = new OleDbCommand(strSql, connet1);
                    int a = cmd.ExecuteNonQuery();
                    connet1.Close();
                    if (a > 0)
                    {
                        MessageBox.Show("插入成功!");
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }        }
    此时却提示"找不到输出表Employee"