Ir para conteúdo principal

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.

Tabela de exemplo genérica
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:

Example data table display, with three separate data lists titled 'object', 'attribute', and 'value'

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:

Example data table display, with seven separate data lists titled for each unique entry in the table

A sintaxe desta operação é simples:

Example:  

Generic SELECT* from GenericTable;

Não importa se é um comando LOAD ou SELECT que será usado para carregar o banco de dados genérico.