Restringir a introdução de dados através de uma regra de validação

Restringir a introdução de dados através de uma regra de validação

Pode analisar ou validar os dados em bases de dados de ambiente de trabalho do Access conforme são introduzidos através das regras de validação. Existem três tipos de regras de validação no Access:

  • Regra de Validação de Campo   Pode utilizar uma regra de validação para especificar um critério que todos os valores de campo válidos devem cumprir. Por exemplo, um campo de data pode ter uma regra de validação que não permita valores no passado.

  • Regra de Validação de Registo   Pode utilizar uma regra de validação para especificar uma condição que todos os registos válidos devem satisfazer. Por exemplo, um registo com dois campos de data pode necessitar que os valores de um dos campos sejam sempre anteriores aos valores do outro campo (por exemplo, DataDeInício é anterior à DataDeFim).

  • Validação num formulário   Pode utilizar a propriedade Regra de Validação de um controlo num formulário para especificar um critério que todos os valores introduzidos devem cumprir. A propriedade de controlo Regra de Validação funciona como uma Regra de Validação de Campo.

    Nota : Este artigo não se aplica às aplicações Web do Access – o tipo de base de dados que cria com o Access e publica online.

Neste artigo

Descrição Geral

Tipos de regras de validação

Onde pode utilizar as regras de validação

O que pode incluir numa regra de validação

Adicionar uma regra de validação a uma tabela

Criar uma regra de validação de campo

Criar uma mensagem de aviso para introduções de campos inválidas

Criar uma regra de validação de registo

Criar uma mensagem de aviso para introduções de registos inválidas

Testar dados existentes com uma nova regra de validação

Adicionar uma regra de validação a um controlo num formulário

Criar uma regra de validação para um controlo

Referência das regras de validação

Exemplos de regras de validação e texto de validação

Exemplos de sintaxe para operadores comuns de regras de validação

Utilizar carateres universais em regras de validação

Descrição geral

Este artigo explica como utilizar as regras de validação e o texto de validação nos campos de tabelas e nos controlos de formulários. Uma regra de validação é uma forma de restringir a introdução de dados num campo de tabela ou num controlo (por exemplo, uma caixa de texto) de formulário. O texto de validação permite deixar uma mensagem, de modo a ajudar os utilizadores que introduzam dados inválidos.

O Access verifica se os dados que são introduzidos violam uma regra de validação – se for esse o caso, a introdução não é aceite e o Access apresenta uma mensagem.

O Access fornece várias maneiras de restringir a introdução:

  • Tipos de dados   Todos os campos de tabela possuem um tipo de dados que restringe o que os utilizadores podem introduzir. Por exemplo, um campo Data/Hora aceita apenas datas e horas, um campo Moeda aceita apenas dados monetários, e assim sucessivamente.

  • Propriedades do campo   Algumas propriedades de campos restringem a introdução de dados. Por exemplo, a propriedade Tamanho do Campo restringe a introdução através da limitação da quantidade de dados que podem ser introduzidos.

    Também pode utilizar a propriedade Regra de Validação para impor valores específicos e a propriedade Texto de Validação para avisar os utilizadores sobre eventuais erros. Por exemplo, a introdução de um valor como >100 e <1000 na propriedade Regra de Validação força os utilizadores a introduzirem valores entre 100 e 1000. Uma regra como [DataDeFim]>=[DataDeInício] força os utilizadores a introduzirem uma data de fim que ocorre em ou após a data de início. A introdução de texto como, por exemplo, "Introduza valores entre 100 e 1000" ou "Introduza uma data de fim igual ou posterior à data de início" na propriedade Texto de Validação informa os utilizadores quando estes cometem um erro e indica como o podem corrigir.

  • Máscaras de introdução   Pode utilizar uma máscara de introdução para a validação de dados forçando os utilizadores a introduzirem valores de uma determinada forma. Por exemplo, uma máscara de introdução pode forçar os utilizadores a introduzirem as datas no formato europeu, por exemplo, 2007.04.14.

Pode utilizar estes métodos de validação de dados individualmente ou combinados entre si. Os tipos de dados não são opcionais e fornecem o tipo de validação de dados mais básico.

Para obter mais informações sobre tipos de dados, tamanhos de campos e máscaras de introdução, consulte o artigo Introdução aos tipos de dados e propriedades de campo.

Tipos de regras de validação

Pode criar dois tipos básicos de regras de validação:

  • Regras de validação de campo   Utilize uma regra de validação de campo para verificar o valor que introduziu num campo quando sair do campo. Por exemplo, suponhamos que possui um campo Data e que introduz >=#01/01/2010# na propriedade Regra de Validaçãodesse campo. Agora, a sua regra obriga os utilizadores a introduzirem datas iguais ou posteriores a 1 de janeiro de 2010. Se introduzir uma data anterior a 2010, o Access não o permitirá deixar o campo atual e aceder a outro até que o problema seja resolvido.

  • Regras de validação de registo   Utilize uma regra de validação de registo para controlar quando é que é permitido guardar um registo (uma linha numa tabela). Ao contrário de uma regra de validação de campo, uma regra de validação de registo refere-se a outros campos na mesma tabela. Pode criar regras de validação de registos quando precisar de comparar os valores de dois campos diferentes. Por exemplo, suponhamos que a sua empresa precisa de enviar produtos num prazo de 30 dias e que, caso não os enviar dentro deste prazo, terá de reembolsar o cliente com uma parte do valor da compra. Pode definir uma regra de validação de registo, como [DataExigida]<=[DataDeEncomenda]+30, para garantir que ninguém introduz uma data de envio (o valor do campo DataExigida) posterior ao prazo de 30 dias.

Se a sintaxe das regras de validação parecer críptica, consulte a secção O que pode incluir numa regra de validação para obter uma explicação sobre a sintaxe e alguns exemplos de regras de validação.

Onde pode utilizar as regras de validação

Pode definir regras de validação para campos de tabelas e para controlos em formulários. Quando definir regras para tabelas, essas regras são aplicadas quando importar dados. Para adicionar regras de validação a uma tabela, abra a tabela e utilize os comandos no separador Campos do friso. Para adicionar regras de validação a um formulário, abra o formulário na vista de Esquema e adicione regras às propriedades de controlos individuais.

Os passos na secção Adicionar uma regra de validação a uma tabela explicam como adicionar regras de validação a campos de tabela. Os passos na secção Adicionar uma regra de validação a um controlo num formulário, mais adiante neste artigo, explicam como adicionar regras às propriedades em controlos individuais.

O que pode incluir numa regra de validação

As regras de validação podem conter expressões — funções que devolvem um único valor. Pode utilizar uma expressão para efetuar cálculos, manipular carateres ou testar dados. Uma expressão de uma regra de validação testa os dados. Por exemplo, uma expressão pode verificar a existência de um valor entre vários, como "Tóquio" Ou "Moscovo" Ou "Paris" Ou "Helsínquia". As expressões podem também executar operações matemáticas. Por exemplo, a expressão <100 força os utilizadores a introduzirem valores inferiores a 100. A expressão ([DataDeEncomenda] – [DataDeEnvio]) calcula o número de dias que decorreram desde o momento em que a encomenda foi feita até ao seu envio.

Para mais informações sobre expressões, consulte Criar uma expressão.

Início da Página

Adicionar uma regra de validação a uma tabela

Pode adicionar uma regra de validação de campo e/ou uma regra de validação de registo. Uma regra de validação de campo verifica a introdução num campo e é aplicada quando o campo deixa de estar em foco. Uma regra de validação de registo verifica a introdução num ou mais campos e é aplicada quando o registo deixa de estar em foco. Normalmente, uma regra de validação de registo compara os valores de dois ou mais campos.

Notas :  As regras de validação não são suportadas pelos seguintes tipos de campo:

  • Numeração Automática

  • Objeto OLE

  • Anexo

  • ID de Replicação

Criar uma regra de validação de campo

  1. Selecione o campo que pretende validar.

  2. No separador Campos, no grupo Validação de Campo, clique em Validação e, em seguida, clique em Regra de Validação de Campo.

  3. Utilize o Construtor de Expressões para criar uma regra. Para obter mais informações sobre como utilizar o Construtor de Expressões, consulte o artigo Utilizar o Construtor de Expressões.

Criar uma mensagem de aviso para introduções de campos inválidas

  1. Selecione o campo que precisa de uma mensagem caso a introdução seja inválida. O campo já deverá ter uma regra de validação.

  2. No separador Campos, no grupo Validação de Campo, clique em Validação e, em seguida, clique em Mensagem de Validação de Campo.

  3. Introduza uma mensagem adequada. Por exemplo, se a regra de validação for >10, amensagem poderia ser "Introduza um valor inferior a 10".

Para obter alguns exemplos de mensagens e regras de validação de campos, consulte a secção Referência de regras de validação.

Criar uma regra de validação de registo

  1. Abra a tabela na qual pretende validar registos.

  2. No separador Campos, no grupo Validação de Campo, clique em Validação e, em seguida, clique em Regra de Validação de Registo.

  3. Utilize o Construtor de Expressões para criar uma regra. Para obter mais informações sobre como utilizar o Construtor de Expressões, consulte o artigo Utilizar o Construtor de Expressões.

Criar uma mensagem de aviso para introduções de registos inválidas

  1. Abra a tabela que precisa de uma mensagem caso a introdução seja inválida. A tabela já deverá ter uma regra de validação.

  2. No separador Campos, no grupo Validação de Campo, clique em Validação e, em seguida, clique em Mensagem de Validação de Registo.

  3. Introduza uma mensagem adequada. Por exemplo, se a regra de validação for [DataDeInício]<[DataDeFim], a mensagem poderia ser “A DataDeInício deve anteceder a DataDeFim”.

Início da Página

Testar dados existentes com uma nova regra de validação

Se adicionar uma regra de validação a uma tabela já existente, recomendamos que teste a regra para verificar se existem dados inválidos.

Nota :  O procedimento seguinte só funciona com tabelas de bases de dados de ambiente de trabalho.

  1. Abra a tabela que pretende testar na Vista de Estrutura.

    No separador Estrutura, no grupo Ferramentas, clique em Testar Regras de Validação.

  2. Clique em Sim para fechar a mensagem de aviso e iniciar o teste.

  3. Se lhe for perguntado se pretende guardar a tabela, clique em Sim.

  4. Poderá ver uma série de outras mensagens de aviso à medida que vai avançando no processo. Leia as instruções de cada mensagem e clique em Sim ou Não, conforme a situação, para completar ou parar o teste.

Início da Página

Adicionar uma regra de validação a um controlo num formulário

Pode utilizar as propriedades Regra de Validação e Texto de Validação de um controlo num formulário para validar dados que são introduções para esse controlo e para ajudar os utilizadores que façam introduções de dados inválidas.

Sugestão :  Se criar automaticamente um formulário a partir de uma tabela através dos comandos Formulário no friso, as validações de campos na tabela subjacente são herdadas pelos controlos correspondentes no formulário.

Um controlo pode ter uma regra de validação diferente do campo de tabela ao qual o controlo está vinculado. Isto é útil quando pretende que o formulário seja mais restritivo do que a tabela. A regra do formulário é aplicada e depois é aplicada a regra da tabela. Se a tabela for mais restritiva do que o formulário, a regra definida para o campo de tabela terá precedência. Se as regras forem mutuamente exclusivas, não será possível introduzir dados.

Por exemplo, suponhamos que aplica a regra seguinte a um campo de data numa tabela:

<#01/01/2010#

Porém, depois aplica esta regra ao controlo de formulário que está vinculado ao campo de data:

>=#01/01/2010#

Agora, o campo de data exige a introdução de valores anteriores ao ano 2010, mas o controlo de formulário exige a introdução de datas com esse ano ou após esse ano, o que impede a introdução de qualquer valor.

Criar uma regra de validação para um controlo

  1. Clique com o botão direito do rato no formulário que pretende alterar e clique em Vista de Esquema.

  2. Clique no botão direito do rato no controlo que pretende alterar e, em seguida, clique em Propriedades para abrir a folha de propriedades desse controlo.

  3. Clique no separador Tudo e, em seguida, introduza a regra de validação na caixa de propriedade Regra de Validação.

    Sugestão :  Clique no botão Criar para iniciar o Construtor de Expressões.

    Para obter mais informações sobre como utilizar o Construtor de Expressões, consulte o artigo Utilizar o Construtor de Expressões.

  4. Introduza uma mensagem na caixa de propriedade Texto de Validação.

Início da Página

Referência das regras de validação

As regras de validação utilizam a sintaxe de expressões do Access. Para obter mais informações sobre expressões, consulte o artigo Introdução a expressões.

Exemplos de regras de validação e texto de validação

Regra de validação

Texto de validação

<>0

Introduza um valor diferente de 0.

>=0

O valor deve ser igual ou superior a 0.

-ou-

Deve introduzir um número positivo.

0 ou >100

O valor deve ser 0 ou superior a 100.

ENTRE 0 E 1

Introduza um valor com um sinal de percentagem. (Para utilização com um campo que armazene valores numéricos como percentagens.)

<#01/01/2007#

Introduza uma data anterior a 2007.

>=#01/01/2007# E <#01/01/2008#

A data deve ocorrer em 2007.

<Data()

A data de nascimento não pode ser no futuro.

CompCad(Maiúscula([Apelido]),
[Apelido],0) = 0

Os dados no campo designado por Apelido devem estar em maiúscula.

>=Int(Agora())

Introduza a data de hoje.

M Ou F

Introduza M para masculino e F para feminino.

LIKE "[A-Z]*@[A-Z].com" OU "[A-Z]*@[A-Z].net" OU "[A-Z]*@[A-Z].org"

Introduza um endereço de e-mail .com, .net ou .org válido.

[DataExigida]<=[DataDeEncomenda]+30

Introduza uma data exigida que ocorra antes de 30 dias após a data da encomenda.

[DataDeFim]>=[DataDeInício]

Introduza uma data de fim igual ou posterior à data de início.

Exemplos de sintaxe para operadores comuns de regras de validação

Operador

Função

Exemplo

NÃO

Verifica se há valores contrários. Utilize-o antes de qualquer operador de comparação, exceto NÃO É NULO.

NÃO > 10 (o mesmo que <=10).

IN

Verifica se há valores iguais aos membros de uma lista. O valor de comparação deve ser uma lista separada por vírgulas e entre parênteses.

IN ("Tóquio","Paris","Moscovo")

ENTRE

Verifica se há um intervalo de valores. Deve utilizar dois valores de comparação — inferior e superior — e deve separar esses valores com o separador E.

ENTRE 100 E 1000 (o mesmo que >=100 E <=1000)

COMO

Faz a correspondência entre padrões de cadeias nos campos Texto e Memo.

COMO"Geo*"

NÃO É NULO

Força os utilizadores a introduzirem valores no campo. O funcionamento deste operador é o mesmo que definir a propriedade de campo Obrigatório como Sim. No entanto, se ativar a propriedade Obrigatório e um utilizador não introduzir um valor, o Access apresenta uma mensagem de erro cujo significado pode não ser claro. Em geral, a utilização da base de dados torna-se mais fácil se utilizar NÃO É NULO e introduzir uma mensagem de erro mais clara na propriedade Texto de validação.

NÃO É NULO

E

Especifica que todas as partes da regra de validação devem ser verdadeiras.

>= #01/01/2007# E <=#03/06/2008#

Nota :  Também pode utilizar o operador E para combinar regras de validação. Por exemplo: NÃO "RU" E LIKE "R*".

OU

Especifica que algumas partes da regra de validação, mas não todas, devem ser verdadeiras.

Janeiro OU Fevereiro

<

Inferior a.

<=

Inferior ou igual a.

>

Superior a.

>=

Superior ou igual a.

=

Igual a.

<>

Diferente de.

Utilizar carateres universais em regras de validação

Pode utilizar carateres universais nas regras de validação. Tenha em conta que o Access suporta dois conjuntos de carateres universais: o ANSI-89 e o ANSI-92. Cada uma destas normas utiliza um conjunto diferente de carateres universais.

Por predefinição, todos os ficheiros .accdb e .mdb utilizam a norma ANSI-89.

Pode alterar a norma ANSI de uma base de dados para ANSI-92 através do seguinte procedimento:

  1. No separador Ficheiro, clique em Opções.

  2. Na caixa de diálogo Opções do Access, clique em Estruturadores de Objetos.

  3. Na secção Estrutura da consulta, em Sintaxe Compatível Com SQL Server (ANSI 92), selecione Esta base de dados.

Para obter mais informações sobre como utilizar carateres universais e sobre as normas ANSI para SQL, consulte o artigo Referência dos carateres universais do Access.

Início da Página

Aumente os seus conhecimentos
Explore as formações
Seja o primeiro a obter novas funcionalidades
Adira ao Office Insider

As informações foram úteis?

Obrigado pelos seus comentários!

Obrigado pelo seu feedback! Parece que poderá ser benéfico reencaminhá-lo para um dos nossos agentes de suporte do Office.

×