ado向数据库(access)中添加记录,为何总是出错误?
代码如下 
loginname := edit1.Text;
password := edit2.Text;
ADOTable1.InsertRecord([loginname,password]);
Frmnewuser.hide;
提示Project myproject.exe raised exception class EDatabaseError with messa
ge 'field loginid''cannot be modified'.process stopped.user step or run to continue
请问是什么原因

解决方案 »

  1.   

    要先adotable.edit
       loginname := edit1.Text;
    password := edit2.Text;
    ADOTable1.InsertRecord([loginname,password]);
    adotable.post
      

  2.   

    不行的,还是那样的错误,是不是我用的access xp不被delphi支持?
      

  3.   

    adotable1.insert;
    adotable.fieldbyname('fieldname1').asstring:=loginname;
    adotable.fieldbyname('fieldname2').asstring:=password;
    adotable1.post;
    给分吧,^_^
      

  4.   

    loginname := edit1.Text;
    password := edit2.Text;
    adotable1.insert;
    adotable.fieldbyname('fieldname1').asstring:=loginname;
    adotable.fieldbyname('fieldname2').asstring:=password;
    adotable1.post;
      

  5.   

    'field loginid''cannot be modified
    你的表中有一个字段loginID没有输入,可能重复了,因此要取一个新的loginID:
     maxID:=... //取新的loginID
     adotable1.insert;
     adotable1.fieldbyname('loginID').asInteger:=maxID;
     adotable1.fieldbyname('fieldname1').asstring:=loginname;
     adotable1.fieldbyname('fieldname2').asstring:=password;
     adotable1.post;
      

  6.   

    你的DBE升级了吗?要还没有升级!就有这样的问题!请你先升级的DBE!
      

  7.   

    还是 LuckyJan(小虾无招) 说得对,把这个字段删了就ok了,同时谢谢其他兄弟,接分了!