Compartilhar via


Propriedade Database.DesignMasterID (DAO)

Aplica-se ao: Access 2013, Office 2013

Define ou retorna um valor de 16 bytes que identifica exclusivamente a Design Mestre em um conjunto de réplicas (apenas espaços de trabalho do Microsoft Access).

Sintaxe

expressão . DesignMasterID

expressão Uma variável que representa um objeto do Banco de dados.

Comentários

Você deve definir a propriedade DesignMasterID somente se precisar mover o Design Mestre atual. Definir essa propriedade torna uma réplica específica no conjunto de réplicas a Design Mestre.

Observação

[!OBSERVAçãO] Nunca cria uma segundo Design Mestre em um conjunto de réplicas. A existência de um segundo Design Mestre pode resultar em perda de dados.

Sob circunstâncias extremas — por exemplo, se o Design Mestre for apagada ou estiver corrompida — você poderá definir essa propriedade na réplica atual. Entretanto, a definição dessa propriedade em uma réplica, quando já houver outro Design Mestre no conjunto, poderá dividir o conjunto de réplicas em dois conjuntos irreconciliáveis e impedir qualquer sincronização de dados posterior.

Se você decidir tornar uma réplica o novo Design Mestre para o conjunto, sincronize-a com todas as réplicas no conjunto de réplicas antes de definir a propriedade DesignMasterID na réplica. A réplica deve ser aberta no modo exclusivo para torná-la o Design Mestre.

Se você tornar uma réplica, que é somente leitura, o Design Mestre, a réplica de destino se tornará de leitura/gravação; o Design Mestre antigo também permanecerá de leitura/gravação.

A configuração da propriedade DesignMasterID é armazenada na tabela de sistema MSysRepInfo.

Exemplo

Este exemplo define a propriedade DesignMasterID para a configuração da propriedade ReplicaID de outro banco de dados, tornando esse banco de dados o Design Mestre no conjunto de réplicas. As Estruturas-mestre nova e antiga são sincronizadas para atualizar as alterações de design. Para que esse código funcione, você deve criar uma Estrutura-mestre, incluir seus nomes e caminhos como apropriado e executar esse código a partir de um banco de dados diferente do Design Mestre novo ou antigo.

 Sub SetNewDesignMaster(strOldDM as String, _ 
    strNewDM as String) 
    
    Dim dbsOld As Database 
    Dim dbsNew As Database 
    
    ' Open the current Design Master in exclusive mode. 
    Set dbsOld = OpenDatabase(strOldDM, True) 
    
    ' Open the database that will become the new 
    ' Design Master. 
    Set dbsNew = OpenDatabase(strNewDM) 
    
    ' Make the new database the Design Master. 
    dbsOld.DesignMasterID = dbsNew.ReplicaID 
    
    ' Synchronize the old Design Master with the new 
    ' Design Master, and allow two-way exchanges. 
    dbsOld.Synchronize strNewDM, dbRepImpExpChanges 
    dbsOld.Close 
    dbsNew.Close 
 
 End Sub