TTable换成TQuery也应该可以解决。
后台用SQL Server时,别去用TTable。
不信?只要你的表足够大(10000记录,十几个字段),你把你的程序同时执行10个副本试试

解决方案 »

  1.   

    这是因为TTable不知道你这个字段可以自动取值,而且有是一个主键,不能是空,才会出现这种问题。我以前也遇到过。
      

  2.   

        最好不要用自动递增字段,因为DELPHI与SQL-SERVER的连接有很多问题,最好由手工控制!
        如果真的要解决,不允许该字段为空,不允许有默认值!因为自动递增字段本质上为数值型,默认是0,然后再由计算得到当前值。DELPHI此时会产生两条记录,一条是系统的,一条是DELPHI的,(除此字段外,其它一律相同)如果此时删除(未Post前),那么只能删除DELPHI产生的记录,系统产生的不会删除,可以移动,但是不能修改或删除,如果重新打开表,那么该记录自动消失!你可以在DBGrid中操作然后看到此壮观场面!
        当然,如果你对该字段赋值,则一点问题没有!