SQLite to RDBMS, który służy do zarządzania danymi bazy danych, która jest umieszczana w wierszach i kolumnach tabeli. Ten zapis pomaga nam zrozumieć, jakie jest unikalne ograniczenie w SQLite, a także jak działa w SQLite.
Jakie jest unikalne ograniczenie w SQLite
Unikalne ograniczenie zapewnia, że dane w kolumnie powinny być unikalne, co oznacza, że żadne pola tej samej kolumny zawierają podobne wartości. Na przykład tworzymy kolumnę, e -mail i definiujemy ją z unikalnym ograniczeniem, aby zapewnić, że żaden e -mail włożony w kolumnie nie powinien być taki sam jak drugi zapis kolumny.
Jaka jest różnica między unikalnym a kluczowym ograniczeniem klucza podstawowego w SQLite
Oba ograniczenia, klucz podstawowy i unikalny zapewniają, że w tabeli nie powinno być włożone żadne zduplikowane wpis, ale różnica; Tabela powinna zawierać tylko jeden klucz podstawowy, podczas gdy unikalne ograniczenie może być używane dla więcej niż jednej kolumny w tej samej tabeli.
Jak unikalne ograniczenie należy zdefiniować w SQLite
Unikalne ograniczenie można zdefiniować w pojedynczej kolumnie lub w wielu kolumnach w SQLite.
Jak unikalne ograniczenie należy zdefiniować w kolumnie
Unikalne ograniczenie można zdefiniować jako kolumnę, za pomocą której może zapewnić, że żadne podobne wartości nie mogą wejść w żadnym polu tej kolumny. Ogólna składnia definiowania unikalnego ograniczenia w kolumnie to:
Utwórz tabelę TABLE_NAME (kolumn1 Data unikalne, kolumn2 danych danych);Wyjaśnienie tego jest:
Aby zrozumieć tę składnię, rozważ przykład utworzenia tabeli dla studentów_data, która ma dwie kolumny, jedna jest ze std_id, a druga nazwa ST_Name, miała zdefiniować kolumnę, std_id, z unikalnym ograniczeniem, aby żaden z uczniów nie mógł mieć Podobny std_id jako:
Utwórz tabelę studentów_data (STD_ID INTEGER unikalny, tekst std_name);Wstaw wartości za pomocą:
Wstaw wartości studentów_data (1, „John”), (2, „Paul”);Teraz dodamy kolejną nazwę ucznia, w której std_id to 1:
Wstaw wartości studentów_data (1, „Hannah”);Widzimy na podstawie wyjścia, wygenerował błąd wkładania wartości STD_ID, ponieważ został zdefiniowany za pomocą unikalnego ograniczenia, co oznacza, że żadna wartość nie może być powielona z innymi wartościami tej kolumny.
Jak definiuje się unikalne ograniczenie dla wielu kolumn
Możemy zdefiniować wiele kolumn z unikalnym ograniczeniem, które zapewnia, że nie ma powielania danych wstawionych we wszystkich wierszy w tym samym czasie. Na przykład, jeśli musimy wybrać miasta na wycieczkę do trzech grup ludzi (a, b i c), nie możemy przypisać tego samego miasta do wszystkich trzech grup, można to zrobić za pomocą unikalnego ograniczenia.
Na przykład te trzy scenariusze mogą być możliwe:
Grupa A | Grupa_b | Grupa_c |
---|---|---|
Floryda | Floryda | Boston |
Nowy Jork | Floryda | Floryda |
Floryda | Floryda | Floryda |
Ale następujący scenariusz nie jest możliwy, jeśli używamy unikalnych ograniczeń:
Grupa A | Grupa_b | Grupa_c |
---|---|---|
Floryda | Floryda | Floryda |
Ogólna składnia używania unikalnego ograniczenia do wielu kolumn to:
Utwórz tabelę Table_name (kolumn1 danych, kolumna2, unikalne (kolumn1, kolumn2));Wyjaśnienie tego jest:
Aby to zrozumieć, rozważymy powyższy przykład i uruchomić następujące polecenie, aby utworzyć tabelę Trip_Data:
Utwórz tabelę trip_data (tekst grupy, tekst grupy_b, tekst grupy_c, unikalny (grupa_a, grupa_b, grupa_c));Wstawymy wartości przypisywania ich miast:
Wstaw wartości Trip_Data („Florida”, „Florida”, „Boston”), („New York”, „Florida”, „Florida”), („Florida”, „Florida”, „Florida”);Teraz wstawymy to samo miasto we wszystkie kolumny Trip_Data:
Wstaw wartości Trip_Data („Florida”, „Florida”, „Floryda”);Z wyjścia widzimy, powielanie danych we wszystkich kolumnach zdefiniowanych przez unikalne ograniczenie jest niedozwolone, a wygenerowany błąd unikalnego ograniczenia nie powiodło się.
Jak dodać unikalne ograniczenie do istniejącej tabeli
W SQLite możemy dodać ograniczenie za pomocą polecenia alter, na przykład mamy tabelę studentów_data z kolumnami std_id, std_name, chcemy dodać ograniczenie std_id do tabeli, studenci_data:
Jak upuścić unikalne ograniczenie do istniejącego tabeli
Podobnie jak inne bazy danych, nie możemy upuścić ograniczenia za pomocą poleceń Drop i Alter, aby usunąć unikalne ograniczenia, które powinniśmy zastosować tę samą procedurę, którą zdecydowaliśmy się na dodanie ograniczenia do istniejącej tabeli i na nowo zdefiniowanie struktury tabeli.
Rozważmy powyższy przykład ponownie i usuń z niego unikalne ograniczenia:
Pragma coreig_keys = off;Wniosek
Unikalne ograniczenie jest używane w bazach danych w celu ograniczenia duplikacji wartości wstawionych na pola tabeli, podobnie jak ograniczenie kluczowe, ale istnieje różnica między nimi; Tabela może mieć tylko jeden klucz podstawowy, podczas gdy tabela może mieć unikalne kolumny kluczowe więcej niż jeden. W tym artykule omówiliśmy, czym jest unikalne ograniczenie i jak można go użyć w SQLite za pomocą przykładów.