Czy zastanawiałeś się kiedyś, co się stanie, jeżeli wykonując ciąg instrukcji w ramach transakcji doprowadzisz do błędu? Czy transakcja się wykona opuszczając tę pojedynczą nieudaną instrukcję, czy też wycofa wszystkie operacje wykonywane w ramach transakcji? Reguluje to opcja XACT_ABORT.
Opcja set XACT_ABORT ON lub OFF
Jak działa TRANSACTION ISOLATION LEVEL SERIALIZABLE?
W normalnych warunkach, czyli z ustawieniami domyślnymi każdy zapis nakłada na czas transakcji blokadę EXCLUSIVE czyli na wyłączność. Odczyty natomiast nakładają tzw. SHARE LOCK, czyli blokadę dzieloną. Na danym rekordzie może istnieć kilka SHARE LOCK, ale tylko jeden EXCLUSIVE LOCK. Jeżeli rekord ma nałożoną blokadę EXCLUSIVE, to nie można nałożyć na niego blokady SHARED.
Takie domyślne działanie można zmieniać poprzez TRANSACTION ISOLATION LEVEL.
Rozważmy taki przykład: Czytaj dalej »
Table hint: TABLOCKX, HOLDLOCK, READPAST
Jeżeli zamierzasz wykonać procedurę składowaną pobierającą określone dane z jednej chwili, nie dopuszczając takiej opcji, że podczas wykonywania procedury ktoś dopisał/usunął czy też zmienił jakiś rekord możesz posłużyć się table hint TABLOCKX. Czytaj dalej »
Cache procedur. Rekompilacja zapytań, procedur. Query Hint RECOMPILE
Ważną cechą optymalizacji zapytań w SQL Server jest to, że raz przygotowany plan wykonania (execution plan) jest zapisywany w cache procedur. Kiedy po raz kolejny użytkownik uruchomi takie samo zapytanie, SQL serwer nie tworzy nowego planu zapytań, ale realizuje stary zapamiętany plan. Oczywiście zdarzają się sytuacje kiedy plan trzeba utworzyć od nowa. Plan utworzy się automatycznie od nowa jeżeli np. zmieni się struktura tabel, przeliczą się statystki lub cache zostanie wyczyszczony za pomocą polecenia:
Dbcc freeproccache Czytaj dalej »
Query hint MAXDOP. Opcja serwera 'max degree of parallelism’. Wykorzystanie wielu procesorów w zapytaniu.
Oczywiście do wykonywania zapytań konieczna jest praca procesora… Miło by też było gdyby podczas wykonywania zapytań serwer rzeczywiście wykorzystywał kilka procesorów na raz! Reguluje tym parametr ‘max degree of parallelism’. Jest to wartość całkowita, która mówi ile procesorów jednocześnie może maksymalnie wykonywać jedno zapytanie. Nie regulujesz nim ile procesorów rzeczywiście wykona zapytanie, a jedynie określasz im maksymalną dopuszczalną liczbę. Czytaj dalej »
Jak sprawdzić numer zainstalowanej wersji MDAC?
MDAC (Microsoft Data Access Components) to zbiór komponentów wydawanych przez Microsoft umożliwiający dostęp do danych. Niektóre programy mają specyficzne wymogi dotyczące tej biblioteki. Pojawia się wtedy pytanie „jaka wersja MDAC jest teraz zainstalowana”? Zgodnie z opisem na http://support.microsoft.com/kb/301202 można do tego użyć programu Component Checker, albo, co wydaje się o wiele prostsze zajrzeć do rejestru!
Pod kluczem
HKEY_LOCAL_MACHINE\Software\Microsoft\DataAccess\FullInstallVer
Zjadziesz interesujące Cię informacje o wersji MDAC
U mnie wygląda to tak:
Jak zmienić powiązania plików z określonymi rozszerzeniami z programami w Windows 7
W starszych Windowsach tego rodzaju rzeczy robiło się w Panelu sterowania w Opcjach folderów. Jednak w wersji Windows 7 aby określić jakim programem ma być domyślnie otwierany plik o danym rozszerzeniu należy użyć apletu „Programy domyślne”.































