Access VBA教程:UniqueTable属性

指定在下列情况下可以更新的表:

String 型,可读写。

expression.UniqueTable

expression   必需。返回 Form对象的表达式。

说明

UniqueTable属性是字符串表达式,表示可以更新的唯一表。

可以使用属性表Visual Basic 来设置该属性。

UniqueTable属性标识了联接的“多”表。如果没有设置 UniqueTable属性,则与视图、包含联接的存储过程或 SQL 字符串绑定的窗体是只读的。同时,对于联接,由 View.Open 或 StoredProc.Run 产生的数据表是只读的(因为无法设置 UniqueTable属性)。只要设置了 UniqueTable属性,则只有该表中的字段是可更新的,只能对该表进行插入和删除。

为了使记录集成为可更新的快照,以联接光标为基础的窗体或数据访问页必须有 UniqueTable属性字符串。唯一表是基础查询中的表,其中的行与光标的行之间是一一对应的关系。在简单的“病人-医生”联接中,“病人”是唯一表,因为光标的每一行都和“病人”表的一行对应。注意“多对多”联接没有有效的 UniqueTable属性,因此该属性是只读的。对于数据访问页,UniqueTable属性将表示为 RecordsetDef对象。UniqueTable属性的目的在于:

实施正确的可更新性语义:

为“重新同步查询”提供正确的参数值。窗体或 RecordsetDef 的 UniqueTable属性支持 catalog.owner.tablename 标记,需要时可以完全限制基础表,该表来自同一光标的其他表。例如,如果 dbo.authors 和光标中的 user1.authors 相联接,则需要将 UniqueTable属性指定为 dbo.authors 或 user1.authors。

对于联接光标,如果 UniqueTable属性为空,则记录集还原为只读,并且任何编辑尝试都会导致发出嘀声和显示状态消息:“因为没有设置 UniqueTable属性,该记录集无法更新”。如果有一个非空的 UniqueTable属性,就要设置基础记录集或行集的 UniqueTable属性(必要时还要设置 UniqueSchema属性、UniqueCatalog属性)。然后,进行检查并把每个与 UniqueTable属性不匹配的列标记为只读。

在插入和更新操作中,只有“唯一表”中的字段才可以编辑。当用户试图向其中输入数据时,会发出嘀声和“只有‘唯一表’中的字段才可以编辑。”的消息。如果 UniqueTable属性的设置不正确,则对于所有的列都会发生这种情况。

上页:Access VBA教程:UniqueRecords属性 下页:Access VBA教程:UniqueValues属性

Access VBA教程:UniqueTable属性

Access VBA教程:UniqueValues属性 Access VBA教程:UpdateOptions属性
Access VBA教程:UseDefaultPrinter属性 Access VBA教程:UseLongFileNames属性
Access VBA教程:UserControl属性 Access VBA教程:UseTransaction属性
Access VBA教程:ValidationRule属性 Access VBA教程:ValidationText属性
Access VBA教程:Value属性 Access VBA教程:VBE属性
Access VBA教程:Verb属性 Access VBA教程:Version属性
Access VBA教程:Vertical属性 Access VBA教程:VerticalDatasheetGridlineStyle属性
Access VBA教程:ViewChange属性 Access VBA教程:ViewsAllowed属性
Access VBA教程:Visible属性 Access VBA教程:WebOptions属性
Access VBA教程:WhatsThisButton属性 Access VBA教程:Width属性
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号