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.

Veja o exemplo abaixo, GenericTable. É 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.

GenericTable
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.