A partir do Build 20210202 – Build Version 21.1.1.4 foi implementada uma forma de usar o tipo de campo "unique identifier" ou "uuid", para os bancos de dados MS-SQL Server, Oracle e PostgreSQL.
Essa implementação tem o objetivo de criar um identificador único para uma determinada linha de uma tabela, usando um identificador de 16 bytes (128 bits) nativo do Banco de Dados, para identificar um determinado registro, e ser possível manter a sua identificação única desde a criação.
Para cada Banco de Dados, é usado seu tipo nativo para armazenar o valor criado.
Cada registro inserido na tabela, caso não seja informado um valor para o campo usado como identificador único, será populado com um valor único obtido pelo SGDB.
Observação: Todas as funções mencionadas acima são nativas de seus respectivos SGDBs.
A estrutura da tabela no Banco de Dados vai utilizar um tipo de dado que consome apenas 16 bytes e a aplicação pode consultar ou mesmo atribuir um valor ao campo, usando:
A idea de uso deste campo é que cada novo registro criado em uma tabela receba um identificador único, que possa ser lido pela aplicação, possa ser utilizado como chave estrangeira em outra(s) tabela(s), gere um consumo mínimo de armazenamento, e que seja endereçável pela aplicação para leitura e atribuição.
A visibilidade e tratamento do campo na camada de dados do como uma string permite a visualização e manipulação do campo, bem como manter o seu valor em caso de uma manutenção, alteração estrutural ou cópia da tabela de/para outros formatos e vice-versa.
Cada tabela criada pelo possui o campo de controle interno R_E_C_N_O_ que emula o numero físico de um registro ISAM. Esse valor, embora seja atribuído uma vez na inserção, não é persistido ou exportado para outros drivers ou formatos de arquivos de dados, e pode ser recriado caso o controle de numeração da tabela seja alterado. ou uma alteração estrutural exija internamente a recriação da tabela.
|