Monthly Archive: January 2016

Strony danych i ekstenty w SQL Server

PagesAndExtentsInSQLServer_00

Wszystkie dane w SQL Server fizycznie składowane są w stronach danych. Dziś właśnie zajmiemy się tą tematyką – postaram się ją przybliżyć na takim poziomie abyśmy mogli w późniejszym okresie dotykać tematów już nieco bardziej skomplikowanych. Tak więc każda dana w SQL Server fizycznie składowana jest na stronach danych. Każda z nich jest ujednolicona pod kątem wielkości i posiada rozmiar 8 KB – SQL Server nie pozwala na modyfikację tej wielkości. 8 stron tworzy tzw. ekstent. Z prostego wyliczenia możemy się dowiedzieć, że skoro 8 stron o wielkości 8KB tworzy ekstent to ma on wielkość 64KB. W momencie gdy tworzony…
Read more

Pliki i grupy plików w SQL Server

FilesAndFilegroupsInSQLServer_000

Baza danych stworzona w ramach SQL Server może składać się z następujących struktur plikowych: Plik główny (Primary data file) -plik główny bazy danych, który posiada każda baza danych. W ramach pojedynczej bazy danych może występować tylko jeden plik główny. Przechowuje on dane oraz pełni rolę kontrolną nad pozostałymi plikami. Pliki bazy danych w SQL Server mogą mieć dowolne rozszerzenie ale zwyczajowo plik główny ma rozszerzenie .mdf Plik pomocniczy (Secondary data file) – dodatkowe pliki danych. Każda baza może mieć wiele plików tego typu bądź nie mieć żadnego. Przyjmuje się, że pliki te mają rozszerzenie .ndf Plik dziennika transakcji (Log file)…
Read more

Typy tekstowe w SQL Server

Artykuł ten jest częścią serii Od 0 do TSQL którą znajdziesz tutaj. SQL Server posiada szereg wbudowanych typów danych. Każda kolumna,parametr czy też zmienna posiada swój własny typ danych. Zrozumienie tej koncepcji jest niezmiernie ważne jeśli chcemy na poważnie pracować z bazami danych. Artykuł ten ma za zadanie pogłębić Waszą wiedzę z zakresu tej tematyki co będzie stanowiło wstęp do kolejnych epizodów niniejszej serii. SQL Server dostarcza wielu typów danych “z pudełka”, dzięki czemu nie musimy definiować ich własnoręcznie. Oczywiście istnieje możliwość definiowania własnych typów danych ale jest to temat na inny artykuł – póki co przyjrzymy się tym, które…
Read more

Instrukcje warunkowe CASE i IIF

  Artykuł ten jest częścią serii Od 0 do TSQL, którą znajdziesz tutaj. Dzisiejszym tematem w ramach serii Od 0 do TSQL będzie instrukcja CASE  oraz funkcja IIF. Służą one do tworzenia tak zwanych instrukcji warunkowych – czym one są oraz jak ich użyć opowiem w dalszej części niniejszej publikacji. Czasem w naszym zapytaniu chcemy dodać kolumnę, która będzie zawierała określone wartości w zależności od jakiegoś warunku np. jeżeli ktoś jest w wieku od 1 do 10 lat to przypisz mu wartość “Dziecko”, jeżeli mieści się w przedziale od 11 do 19 lat to przypisz mu wartość “Nastolatek” i tak…
Read more

Porządkowanie wyników z wykorzystaniem ORDER BY i TOP

  Artykuł ten jest częścią serii Od 0 do TSQL, którą znajdziesz tutaj. W ostatnim artykule rozszerzyliśmy sobie wiedzę na temat filtrowania przy pomocy klauzuli WHERE oraz predykatów logicznych, słów kluczowych BETWEEN oraz LIKE. Jednak za każdym razem gdy dostawaliśmy określone dane w rezultacie nie były one w żaden sposób uporządkowane. Niejednokrotnie otrzymany rezultat może wydawać się uporządkowany lecz możemy to traktować jako przypadek, gdyż aby mieć pewność co do porządku danych w zwracanym rezultacie musimy użyć specjalnej klauzuli tj. ORDER BY, która będzie tematem niniejszej publikacji. Tak więc klauzula ORDER BY służy do porządkowania danych w ramach określonego zapytania….
Read more