Bancos de dados genéricos
Um banco de dados genérico é uma tabela na qual os nomes de campo são armazenados como valores de campos em uma coluna e os valores de campos são armazenados em uma segunda. Geralmente, os bancos de dados genéricos são usados para atributos de objetos diferentes.
Observe o exemplo GenericTable abaixo. É um banco de dados genérico que contém dois objetos: uma bola e uma caixa. Alguns dos atributos, como cor e peso, são comuns aos dois objetos, enquanto outros, como diâmetro, altura, comprimento e largura, não são.
object | attribute | value |
---|---|---|
ball | color | red |
ball | diameter | 10 cm |
ball | weight | 100 g |
box | color | black |
box | height | 16 cm |
box | length | 20 cm |
box | weight | 500 g |
box | width | 10 cm |
Por um lado, seria inconveniente armazenar os dados de forma que cada atributo recebesse uma coluna própria, pois muitos dos atributos não são relevantes para um objeto específico.
Por outro lado, seria confuso exibi-los de forma que misturasse comprimentos, cores e pesos.
Se esse banco de dados for carregado no QlikView usando o modo padrão, a exibição dos dados em uma tabela teria esta aparência:
No entanto, se a tabela for carregada como um banco de dados genérico, as colunas dois e três serão divididas em tabelas diferentes, uma para cada valor exclusivo da segunda coluna:
A sintaxe desta operação é simples:
Exemplo:
Generic SELECT* from GenericTable;
Não importa se é um comando LOAD ou SELECT que será usado para carregar o banco de dados genérico.