# Ogólne bazy danych

Ogólna baza danych to tabela, w której jedna kolumna zawiera nazwy pól, a druga kolumna wartości pól. Typowym zastosowaniem ogólnych baz danych jest zapisywanie atrybutów różnego rodzaju obiektów.

Przyjrzyjmy się poniższemu przykładowi: GenericTable Jest to ogólna baza danych zawierająca dwa obiekty: kulę i sześcian. Niektóre atrybuty będą wspólne dla obu obiektów (na przykład kolor i waga), a inne nie (na przykład średnica, wysokość, długość i szerokość).

Ogólna tabela przykładowa

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

Z jednej strony niewygodne byłoby zapisywanie danych z osobną kolumną dla każdego atrybutu, skoro wiele atrybutów nie będzie mieć zastosowania do konkretnego obiektu.

Z drugiej strony wyświetlanie pomieszanych informacji o długości, kolorze i wadze byłoby nieczytelne.

Załadowanie tej bazy danych do QlikView w sposób standardowy w celu wyświetlenia ich w tabeli przyniesie następujący skutek:

![Example data table display, with three separate data lists titled 'object', 'attribute', and 'value'](https://help.qlik.com/pl-PL/qlikview/May2024/Subsystems/Client/Content/Resources/Images/ex_gen_generic2.png)

Jeśli jednak tabela zostanie załadowana jako ogólna baza danych, kolumny druga i trzecia zostaną rozdzielone na różne tabele, po jednej dla każdej niepowtarzalnej wartości drugiej kolumny:

![Example data table display, with seven separate data lists titled for each unique entry in the table](https://help.qlik.com/pl-PL/qlikview/May2024/Subsystems/Client/Content/Resources/Images/ex_gen_generic3.png)

Składnia takiej operacji jest prosta:

Przykład:

`Generic SELECT* from GenericTable;`

Nie ma znaczenia, czy do załadowania ogólnej bazy danych zostanie użyta instrukcja LOAD, czy SELECT.