In memory OLTP poajwiło się w SQL server wraz z SQL 2014. Ogólnie rzecz biorąc przebudowano zasady przechowywania wierszy ze znanych nam drzew na ciagi dacych umieszczone w pamięci, a co za tym idzie również zupełnie zmieniono niepodważalne do tej pory święte zasady pracy z danymi, jak np. blokowanie rekordów, które tutaj nie występuje, Ładnie […]
Archiwum dla kategorii ‘SQL’
SQL 2016: In-memory OLTP
SQL: bcp: [Microsoft][SQL Native Client]I/O error while reading BCP format file
Podczas standardowego uruchomienia bcp a plikiem format pojawiał się komunikat o błędzie: [Microsoft][SQL Native Client]I/O error while reading BCP format file Zazwyczaj I/O error oznacza, że pliku nie można odczytać, bo np nie ma go we właściwym katalogu, jest literówka w nazwie, albo plik jest, ale brakuje do niego uprawnień. Jednak tym razem wszystkie te […]
SQL 2016: Columnstore index idzie o krok do przodu
Każda z wcześniejszych wersji SQL miała jedną znaczną bolączkę jeśli chodzi o columnstore index. Otóż utworzenie takiego indeksu wiązało się z tym, że tabela stawała się tylko do odczytu. W wersji 2014 problem został trochę osłabiony, bo clustered columnstore index mógł już być aktualizowany. Problem rozwiązano tam w ten sposób, że w momencie utworzenia indeksu […]
SQL 2016: Słownik pojęć chmurowych
Elastic Database Pools W Azure można zdefiniować pulę baz danych i przypisać jej pewne gwarantowane zasoby DTU (Database Transaction Units). Można posiadać więcej pul i działanie baz w jednej puli nie ma wpływu na działanie baz w drugiej puli. Dzięki temu unikniesz przydzielania zasobów indywidualnie dla każdej bazy danych, a co za tym idzie przeszacowania […]
SQL 2016. Funkcja FORMATMESSAGE. O jakie to fajne!
Od lat programiści byli przyzwyczajeni do przygotowania napisów do wyświetlenia w interfejsie użytkownika z wykorzystaniem SPRINT lub SPRINT-o podobnych funkcji. Właściwie taką właśnie funkcją była i jest RAISERROR. Można np. w taki sposób zgłosić informację o usunięciu rekordów: RAISERROR(’%d records have been deleted from table %s’,10,1,12345,’app_log’) Oczywiście najczęściej liczba 12345 i napis 'app_log’ byłyby tu […]
SQL: Szybka ściąga do konfiguracji KERBEROS
Te kilka poleceń pozwala mi diagnozować problemy z połączeniem do SQL servera, zwłaszcza w przypadku wystąpienia błędu: SSPI handshake failed with error code 0x80090311 bardzo pomocne są artykuły https://mssqlwiki.com/2013/12/09/sql-server-connectivity-kerberos-authentication-and-sql-server-spn-service-principal-name-for-sql-server/ https://technet.microsoft.com/en-us/library/ms191153.aspx z których pochodzą między innymi poniższe komendy. Do poprawnego skonfigurowania protokołu Kerberos i tym samym uniknięcia w/w błedu potrzebne są tzw. Service Principal Name skonfigurowane […]
SQL: Nie można połączyć się z serwerem. Timeout.
W dużych środowiskach administrując serwerami nierzadko nie wiesz, czy między serwerami jest zaimplementowany firewall czy nie i ewentualnie, czy przepuszczany jest ruch do SQL servera. W takim przypadku rewelacyjnie pomocny jest program portquery. Można by powiedzieć, że to taki ping, który potrafi sprawdzić, czy osiągalny jest nie tyle cały host, co pewna usługa działająca na […]