Histórico da Página
A partir
...
do
Inclusão de trecho | ||||||
---|---|---|---|---|---|---|
|
...
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.
...
Características
Para cada Banco de Dados, é usado
...
seu tipo nativo
...
para armazenar o valor criado
...
.
- Para o MS-SQL Server: é utilizado o tipo "uniqueidentifier"
...
- Para o PostgreSQL é utilizado o tipo "uuid"
...
- Para o Oracle é utilizado o tipo RAW(16)
...
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.
- Para
...
- o MS-SQL Server, a constraint default do campo usa o valor retornado pela função NEWID
...
- Para o PosgtreSQL é utilizado o valor recuperado através da função uuid_generate_v4
...
- Para o Oracle é utilizado o valor recuperado através da função SYS_GUID
...
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
Inclusão de trecho | ||||||
---|---|---|---|---|---|---|
|
...
ao campo, usando
...
:
- Uma string de 36 caracteres para
...
- MS-SQL Server e PostgreSQL (string UUID de 32 caracteres hexadecimais, divididos em 5 blocos com
...
- separadores '-' , agrupando 8-4-4-4-12 caracteres nessa ordem)
...
- Uma string de 32 bytes hexadecimais sem separadores para o
...
- Oracle
...
Uso pela aplicação
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
Inclusão de trecho | ||||||
---|---|---|---|---|---|---|
|
...
Informações |
---|
Cada tabela criada |
...
pelo |
...
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 |
...
.
|
...
|