conn.Execute "insert into Student (S_Name,Password,SType,Birthday,Sex,DepName,SpeName,Degree,Grade,Nation,Telephone,Email,Address,DDate) values ('" & request.Form("YHM") & "','" & request.Form("pwd") & "','" & request.Form("type") & "','1988-12-1','" & request.Form("sex") & "','" & request.Form("dep") & "','" & request.Form("Spe") & "','"& request.Form("degree")&"','" & request.Form("grade") & "','" & request.Form("city") & "','" & request.Form("telephone") & "','" & request.Form("email") & "','" & request.Form("address") & "'," & Date() & ")"数据库是ACCESS 2007 。
表单中的数据都能取到(还特地做了response.write都能显示正常,数据类型也对),就是添加不到ACCESS中。总是说INSERT INTO语句错误。
但是在ACCESS里面用同样的INSERT INTO语句确能成功添加数据。
希望有哪位先生指点指点。

解决方案 »

  1.   

    " & Date() & "
      

  2.   

      估计 是 那个Date() 的问题,抛这个异常 基本上就是 有三种情况: 表字段名 写的不对, 字段和值不对应(个数 类型),表中 有不允许为空的值 服了空值
      

  3.   

    针对#2楼 hanjinkai的回复:Date()函数是取得当前系统时间日期类型,而且表中的‘日期’字段我设置允许为空,而且数据类型我设置为日期类型,还有我用同样复制好改insert语句到ACCESS中却可以执行并成功添加。所以针对您提出的三种宝贵意见全是错的。
    我打印了错误源response.Write err.Source 结果是:Microsoft Office Access Database Engine
    还有我今天又碰到了个问题:同样一个查询语句在SQL server中能够查询出结果,而ACCESS 2007却查不出任何结果。语句如下:select * from engage where Position like '%经理%'
    我想知道是不是ACCESS 2007本身的问题?还是别的什么?是不是也有人碰到过同样的情况?望好心人帮助一下。