Ocorrência | Necessidade de criação de um campo interno para tabelas do DBAccess, não visíveis na estrutura de acesso pelo AdvPL, que registre um datetime e/ou timestamp para cada registro inserido e/ou alterado na base de dados. |
---|
Implementação | Implementado o campo de controle "S_T_A_M_P_", para os bancos MSSQL, ORACLE e POSTGRES, atualizado diretamente pelo SGDB para as linhas da tabela que receberam uma instrução de "UPDATE". |
---|
Informações adicionais | - Referente ao chamado: MTEC-3238
- O tipo do campo criado na tabela é DATETIME (para MSSQL) e TIMESTAMP (para Postgres e Oracle)
- O campo é atualizado na inclusão de novos registros e na alteração de registros existentes com a data e hora atuais no fuso horário UTC, obtido de forma nativa pelo Banco de Dados.
- A responsabilidade de criação deste campo de controle e do gatilho no Banco de Dados para mantê-lo atualizado é do DBAccess.
- A inclusão deste campo nas novas tabelas a serem criadas, e a inclusão deste campo sob demanda nas tabelas já existentes em um determinado SGDB também podem ser feitas mediante a chamada da nova função TCConfig(). Para maiores detalhes consulte a nota de release Implementação - Função TCConfig
- Uma tabela criada com a coluna de controle S_T_A_M_P_ atualiza a coluna no momento da inserção do registro utilizando a constraint default do campo, e em qualquer alteração feita na tabela através de uma trigger de update criada no banco de dados.
- Acrescentar a coluna S_T_A_M_P_ em uma tabela já existente não preenche o conteúdo dos campos para os dados já existentes na tabela, os registros já existentes permanecem com o valor NULL até que sejam alterados.
- O DBAccess pode ser configurado para criar a coluna de controle automaticamente nas novas tabelas, ou mesmo acrescentar a coluna nas tabelas já existentes de forma automática mediante as configurações UseRowStamp=1 e AutoStamp=1, respectivamente. Para maiores detalhes, consulte a documentação nos links DBAccess - Seção [Environment], chave UseRowStamp e DBAccess - Seção [Environment], chave AutoStamp
- As colunas S_T_A_M_P_ não são criadas em tabelas temporárias.
|
---|