主要想为了防止 RecordSet.addNew 后,用户未输入数据就转向其它的操作类似 access 里的    if Me.NewRecord = true then
       .........这样的操作

解决方案 »

  1.   

    判断Status 属性 (ADO)
    如:rs.status=?          指示有关批更新或其他大量操作的当前记录的状态。返回值返回下列一个或多个 RecordStatusEnum 值之和。常量 说明 
    adRecOK 成功地更新记录。 
    adRecNew 记录是新建的。 
    adRecModified 记录被修改。 
    adRecDeleted 记录被删除。 
    adRecUnmodified 记录没有修改。 
    adRecInvalid 由于书签无效,记录没有保存。 
    adRecMultipleChanges 由于影响多个记录,因此记录未被保存。 
    adRecPendingChanges 由于记录引用挂起的插入,因此未被保存。 
    adRecCanceled 由于操作被取消,未保存记录。 
    adRecCantRelease 由于现有记录锁定,没有保存新记录。 
    adRecConcurrencyViolation 由于开放式并发在使用中,记录未被保存。 
    adRecIntegrityViolation 由于用户违反完整性约束,记录未被保存。 
    adRecMaxChangesExceeded 由于存在过多挂起更改,记录未被保存。 
    adRecObjectOpen 由于与打开的储存对象冲突,记录未被保存。 
    adRecOutOfMemory 由于计算机内存不足,记录未被保存。 
    adRecPermissionDenied 由于用户没有足够的权限,记录未被保存。 
    adRecSchemaViolation 由于记录违反现行数据库的结构,因此未被保存。 
    adRecDBDeleted 记录已经从数据源中删除。 
      

  2.   

    难道RecordSet指针的移动不是你控制的吗?
      

  3.   

    如:
      if rs.status=adrecnew then
         msgbox "记录是新建的。"
      endif