Aby tabela bazy danych mogła zostać użyta w aplikacji Insights, każdy jej wiersz musi być jednoznacznie identyfikowalny. Następująca logika umożliwia wskazanie kolumn używanych do zapewnienia unikalności:
- Wyszukaj klucz podstawowy. Jeśli istnieje, użyj kolumn, które definiują ten klucz podstawowy.
- Wyszukaj indeks oznaczony jako unikalny. Jeśli istnieje, użyj kolumn, które definiują ten indeks.
Wskazówka:
Jeśli jest używany indeks unikalny i w wybranych kolumnach znajdują się wartości NULL, może to prowadzić do nieoczekiwanych wyników. Najlepszą praktyką jest definiowanie klucza podstawowego dla wszystkich tabel. Jeśli nie jest możliwe zdefiniowanie klucza podstawowego, kolumny, które wchodzą w skład indeksu unikalnego, powinny być oznaczone w bazie danych jako not null.
Jeśli powyższe kryteria nie są spełnione, pojawi się ikona ostrzeżenia po wybraniu tabeli do dodania do skoroszytu i konieczne jest zastosowanie unikalnego identyfikatora. Unikalny identyfikator jest polem lub kombinacją pól, które w sposób unikalny identyfikują każdy wiersz danych. Jeśli używane jest jedno pole, musi ono zawierać wyłącznie unikalne wartości i nie może zawierać wartości pustych. Jeśli używanych jest wiele pól, dla pojedynczych pól nie są wymagane wartości unikalne, ale kombinacja wartości w wierszach zawsze musi być unikalna.
Unikalny identyfikator można utworzyć z użyciem kolumn zawierających ciągi znakowe lub liczby całkowite. Na potrzeby unikalnego identyfikatora nie można wybierać kolumn zawierających daty, wartości zmiennopozycyjne ani wartości podwójnej precyzji.
Przykłady
Poniższa tabela zawiera dane sprzedaży sieci handlowej. Tabela zawiera numer sklepu, stan, w którym znajduje się sklep, a także łączną wartość sprzedaży. Dwa pola (Store number (Numer sklepu) i Total sales (Sprzedaż łącznie) zawierają unikalne wartości i nie zawierają wartości pustych. Pole Stan nie zawiera wartości unikalnych. W tym przypadku jako unikalnego identyfikatora należy użyć pola Numer sklepu, ponieważ każdy sklep jest podany tylko jeden raz i wiadomo, że numer sklepu będzie zawsze unikalny dla każdego sklepu.
Numer sklepu | Stan | Sprzedaż łącznie |
---|---|---|
1001 | Colorado | 1 583 296,29 |
1002 | Colorado | 1 938 495,84 |
1003 | Wyoming | 1 439 752,57 |
1004 | Montana | 2 583 485,83 |
1005 | Montana | 928 573,67 |
Jeśli jedno pole nie spełnia wymagań dotyczących unikalnego identyfikatora lub nie ma pewności, że wartości w danym polu zawsze pozostaną unikalne, można połączyć wiele pól, aby utworzyć unikalne pozycje. W poniższej tabeli przedstawiono liczbę pozycji będących na stanie w poszczególnych sklepach. Inaczej niż w poprzednim przykładzie, pole Numer sklepu nie jest unikalne, ponieważ istnieje wiele pozycji na stanie w każdym sklepie. Pole Identyfikator pozycji też nie jest unikalne. Pole Liczba jest obecnie unikalne, ale liczba pozycji na stanie w sklepie najprawdopodobniej się zmieni i nie zawsze będzie unikalna. Dlatego tego pola nie należy używać jako identyfikatora. Lepszym identyfikatorem będzie kombinacja pól Numer sklepu i Identyfikator pozycji, ponieważ każda pozycja jest podawana tylko jeden raz dla danego sklepu.
Numer sklepu | Identyfikator pozycji | Liczba |
---|---|---|
1001 | 123 456 | 20 |
1001 | 234 567 | 5 |
1001 | 345 678 | 16 |
1002 | 123 456 | 11 |
1002 | 234 567 | 0 |
1002 | 345 678 | 21 |
Wybieranie unikalnego identyfikatora
Wykonaj następujące czynności, aby zastosować unikalny identyfikator z tabeli bazy danych:
- Kliknij ikonę ostrzeżenia .
Wyświetlone zostanie okno Wybierz unikalny identyfikator. W oknie zostaną wyświetlone pola nieprzestrzenne z tabeli bazy danych, które nie zawierają wartości pustych, a także typy pól.
- Wykonaj jedną z następujących operacji:
- Jeśli wiesz, która kolumna lub kombinacja kolumn jest najlepsza do stworzenia unikalnego identyfikatora, wybierz te pola.
- Jeśli nie wiesz, która kolumna lub kombinacja kolumn jest najlepsza do stworzenia unikalnego identyfikatora, kliknij przycisk Analizuj, aby przeskanować tabelę w poszukiwaniu kolumn, które zawierają wszystkie unikalne wartości. Kolumny zawierające unikalne wartości są oznaczone następującą ikoną:
- Jeśli tabela nie zawiera kolumn, których można by użyć jako unikalnego identyfikatora lub nie chcesz utworzyć unikalnego identyfikatora na podstawie istniejących pól, możesz wybrać opcję Skopiuj tabelę bazy danych i utwórz klucz podstawowy.
- Kliknij przycisk Zastosuj.
Tworzenie klucza podstawowego
Niektóre tabele bazy danych nie zawierają kolumn, których można by użyć jako unikalnego identyfikatora. Dlatego przed użyciem tabeli w aplikacji Insights należy utworzyć klucz podstawowy. W przypadku tych tabel należy wybrać opcję Skopiuj tabelę bazy danych i utwórz klucz podstawowy.
Aplikacja Insights nie modyfikuje danych w tabelach bazy danych, w tym nie dodaje kolumny klucza podstawowego. Przed zastosowaniem klucza podstawowego tworzona jest kopia tabeli bazy danych. Lokalizacja skopiowanej tabeli bazy danych zależy od uprawnień związanych z połączeniem z bazą danych. W przypadku połączeń do odczytu i zapisu skopiowana tabela jest przechowywana w bazie danych. W przypadku połączeń tylko do odczytu tabela jest kopiowana do skoroszytu aplikacji Insights i w nim przechowywana. Zestawy danych skopiowane do skoroszytu będą miały tę samą funkcjonalność co hostowane warstwy obiektowe lub przesłane pliki.