Unikalne identyfikatory

Insights in ArcGIS Enterprise
Insights Desktop

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 sklepuStanSprzedaż łą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 sklepuIdentyfikator pozycjiLiczba

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:

  1. Kliknij ikonę ostrzeżenia Brak klucza głównego.

    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.

  2. 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ą: Wartości unikalne
    • 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.
  3. 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.