动态集
“动态集”是具有动态属性的记录集。在其生存期期间,动态集模式的记录集对象(通常称为动态集)以下列方式与数据源保持同步。在多用户环境中,其他用户能够编辑或删除您的动态集中的记录,或者向您的动态集表示的表中添加记录。应用程序向记录集添加的记录或者从中删除的记录将反映在您的动态集中。其他用户向表中添加的记录直到您调用其 Requery 成员函数重建动态集时才在您的动态集中反映出来。其他用户删除记录时,MFC 代码在您的记录集中跳过删除的记录。其他用户对现有记录做的编辑改动将在您滚动到受影响的记录时在动态集中反映出来。
与此类似,您对动态集中的记录所做的编辑也会在其他用户使用的动态集中反映出来。在其他用户再次查询他们的动态集之前,您添加的记录不会在他们的动态集中反映出来。您删除的记录在其他用户的记录集中被标记为“已删除”。如果到同一数据库有多个连接(多个 CDatabase 对象),与这些连接相关的记录集的状态与其他用户的记录集相同。
当数据必须是动态的时候(如在航空订票系统中),动态集非常有用。
注意
若要使用动态集,必须具有支持动态集的数据源的 ODBC 驱动程序,并且决不能加载 ODBC 游标库。