| Termin | Definicja |
|---|---|
| Kolacja kolumny | Kolacja kolumny to ustawienie sortowania przypisane do konkretnego pola tabeli, nadpisujące domyślne ustawienie bazy. Kolacja kolumny jako reguła porównywania tekstuKolacja kolumny to właściwość określająca, w jaki sposób silnik bazy danych interpretuje wartości tekstowe zapisane w konkretnym polu tabeli. Obejmuje między innymi kolejność sortowania znaków, sposób porównywania napisów oraz traktowanie wielkości liter i znaków diakrytycznych. Dzięki temu dwie wartości tekstowe mogą być uznane za równe albo różne nie tylko na podstawie ich kodów znaków, lecz także zgodnie z regułami wybranego języka lub zestawu znaków. Kolacja przypisana do kolumny może zastępować ustawienie odziedziczone z poziomu bazy danych, schematu albo tabeli. Ma to znaczenie wtedy, gdy w jednej bazie przechowywane są dane wymagające różnych reguł porównywania. Przykładowo nazwy osób mogą wymagać reguł języka polskiego, natomiast identyfikator techniczny może być porównywany według ścisłego porządku znaków, w którym wielkość liter ma znaczenie. Sortowanie i porównywanie wartości w praktyceKolacja wpływa na działanie operacji sortowania, filtrowania, wyszukiwania oraz sprawdzania równości. Jeżeli zapytanie porządkuje kolumnę tekstową, kolejność wyników zależy od reguł zapisanych w kolacji. Wartości zawierające polskie znaki, takie jak „ą”, „ć”, „ł” lub „ż”, mogą zostać umieszczone w innym miejscu niż przy porządku opartym wyłącznie na kodach znaków. Podobnie ustawienie niewrażliwe na wielkość liter może traktować „Jan” i „jan” jako wartości równoważne podczas porównania. Znaczenie ma także wrażliwość na akcenty, czyli znaki diakrytyczne. W zależności od kolacji napisy różniące się wyłącznie akcentem mogą być uznane za takie same albo odmienne. Reguła kolumny może również określać, czy porównanie uwzględnia wielkość liter, znaki kanji, szerokość znaków lub inne właściwości właściwe dla danego systemu zapisu. Te ustawienia nie zmieniają samego tekstu przechowywanego w tabeli, lecz wpływają na interpretację tekstu podczas wykonywania operacji. Wpływ kolacji na klucze i wyszukiwanieKolacja kolumny jest szczególnie istotna dla kolumn używanych w indeksach, kluczach unikatowych i warunkach łączenia tabel. Jeśli reguła uznaje „ABC” i „abc” za równe, ograniczenie unikatowości może potraktować je jako duplikaty. Przy kolacji rozróżniającej wielkość liter oba napisy mogą zostać zapisane jako osobne wartości. Z tego powodu zmiana kolacji nie jest wyłącznie zmianą wyglądu sortowania, lecz może wpływać na poprawność danych oraz działanie istniejących indeksów. Niezgodne kolacje dwóch porównywanych kolumn mogą powodować błędy, ostrzeżenia albo konieczność jawnego wskazania reguły porównania, zależnie od używanego silnika bazy danych. Problem pojawia się między innymi przy łączeniu tabel, porównywaniu kolumn w warunkach wyszukiwania i budowaniu zapytań korzystających z indeksów. Weryfikacja powinna obejmować definicję kolumny, ustawienie domyślne bazy oraz sposób utworzenia indeksów. Warto również sprawdzić, czy aplikacja nie zakłada innego zachowania niż to, które wynika z konfiguracji bazy. Rozpoznawanie problemów z kolacją w aplikacjiObjawem nieprawidłowej lub niezgodnej kolacji może być pozornie przypadkowa kolejność wyników, brak oczekiwanego rekordu przy wyszukiwaniu albo odrzucenie wartości jako powtórzonej. Diagnostyka powinna rozpocząć się od ustalenia rzeczywistej kolacji przypisanej do problematycznej kolumny, a następnie od porównania jej z kolumnami używanymi w filtrach, relacjach i indeksach. Należy rozróżnić problem kolacji od problemu kodowania znaków, ponieważ kodowanie określa sposób reprezentacji danych, natomiast kolacja określa sposób ich porównywania i sortowania. Przed zmianą kolacji trzeba sprawdzić istniejące dane, indeksy, ograniczenia unikatowości oraz zapytania aplikacji. Zmiana może ujawnić duplikaty, zmienić kolejność rezultatów albo wpłynąć na wykorzystanie indeksu. Bezpieczne postępowanie obejmuje wykonanie kopii zapasowej, przetestowanie operacji na kopii bazy i porównanie wyników wyszukiwania przed oraz po zmianie. Warszawskie Pogotowie Komputerowe zajmuje się profesjonalną naprawą laptopów, komputerów PC i ich podzespołów, dlatego w przypadku problemów z aplikacją bazodanową działającą na komputerze można rozpocząć od sprawdzenia sprzętu, systemu oraz lokalnego środowiska pracy. |