我使用的ACCESS数据库,表里面有一个ID字段是个自增列,使用SQLDATASOURCE,使用DETAILVIEW控键进行数据INSERT,总是不成功,估计是ID字段自增列在DETAIL上没有给定值的原因,不知道该怎样解决?

解决方案 »

  1.   

    错误代码没有拷贝下来,现象是在DETAIVIEW里面如果不显示地输入ID字段的内容,就INSERT不成功,另外说明一下,我是在VS.NET2005里面直接拖控键编程的,一个是SQLDATASOURCE,一个DETAILVIEW.
      

  2.   

    ADO.NET操作ACCESS好像是有这个问题的,当初我是这样解决的,
    我把自增属性去掉了,自己取ID
    string strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=database\\CRM.mdb";
    int newID = 1;
    OleDbConnection myConn=new OleDbConnection();
    myConn.ConnectionString = strConn;
    string strMax = "SELECT MAX(ID) AS MAXID FROM [Client]";
    OleDbCommand myCommand=new OleDbCommand(strMax,myConn);
    myConn.Open();
    OleDbDataReader myDataRead=myCommand.ExecuteReader();
    if(myDataRead.Read())
    {
    newID = Convert.ToInt32(myDataRead["MAXID"])+1;
    }
                                else
    {
                                        newID =1;
    }
    myDataRead.Close();