Tag: tsql na dziś

Development, SQL Server

NULL vs WARTOŚĆ i często popełniany błąd przy warunku kolumna <> 'wartość’

Z dokumentacji technet ( https://msdn.microsoft.com/en-us/library/ms188048(v=sql.105).aspx ) Specifies ISO compliant behavior of the Equals (=) and Not Equal To (<>) comparison operators when they are used with null values. Witajcie. Dzisiaj omówimy wyjątkowo perfidny przypadek, który może łatwo doprowadzić do katastrofy ;), jeśli nie pamięta się o tym jak w świecie zbiorówCzytaj dalej / Read more

Development, SQL Server

CREATE TYPE [AS TABLE] – przekazanie tabeli do procedury

Z dokumentacji technet ( http://msdn.microsoft.com/en-us/library/ms175007%28v=sql.105%29.aspx ) Creates an alias data type or a user-defined type in the current database. The implementation of an alias data type is based on a SQL Server native system type. A user-defined type is implemented through a class of an assembly in the Microsoft .NET Framework commonCzytaj dalej / Read more

Development, SQL Server

SQL_VARIANT_PROPERTY ()

Z dokumentacji technet ( http://msdn.microsoft.com/en-us/library/ms178550(v=sql.105).aspx ) Returns the base data type and other information about a sql_variant value. Funkcja teoretycznie służy do sprawdzenia właściwości takich jak: typ,precyzja, ilośc bajtów czy collation dla danych przetrzymywanych w uniwersalnym typie danych sql server jakim jest sql_variant. Ale nic nie stoi na przeszkodzie by sprawdzaćCzytaj dalej / Read more

Development, SQL Server

fn_my_permissions() – Sprawdzenie jakie mamy uprawnienia do bazy danych

Z dokumentacji technet ( http://msdn.microsoft.com/en-us/library/ms176097%28v=sql.105%29.aspx ) Returns a list of the permissions effectively granted to the principal on a securable. Przy pomocy tego polecenia możemy w szybki sposób sprawdzić nasze uprawnia względem konkretnego obiektu. Obiektem może być serwer, baza i oczywiście wszystkie inne, do których dostęp zarządzany jest przez uprawnienia sqlCzytaj dalej / Read more

Development, SQL Server

PRINT vs RAISERROR

Ilu z Was korzystało z polecenia PRINT? A ilu na jego podstawie oparło logikę powiadamiania użytkownika uruchamiającego procedurę/batcha o rozpoczęciu/zakończeniu jakiegoś kroku w kodzie? Podejrzewam, że znajdzie się kilka takich osób… 🙂 No dobrze, a czy zaobserwowaliście jakieś nieprawidłowości w wyświetlaniu komunikatów? Nie? A spróbujcie uruchomić poniższy kod: DECLARE @iCzytaj dalej / Read more

Development, Przydatne skrypty, SQL Server

Sprytne (i szybkie) wygenerowanie tabeli z liczbami od 1 do N (tally table)

Jeżeli potrzebowaliście kiedyś wygenerować na szybko do testów sporą ilość wierszy lub chcieliście otrzymać liczby rosnąco w postaci wierszy (joinowanie numeracji, sprawdzanie ciaglosci numeracji i inne kombinacje ;]) to istnieje sposób na stosunkowo szybkie zaspokojenie takiej potrzeby 😀 Z pomocą przychodzi nam CTE i funkcja okienkowa numerująca dane wygenerowane przezCzytaj dalej / Read more

Development, SQL Server

SELECT {fn TRUNCATE( 100.123456, 4)};

Z dokumentacji technet ( http://msdn.microsoft.com/en-us/library/bb630290(v=sql.105).aspx ) „You can use ODBC Scalar Functions in Transact-SQL statements. These statements are interpreted by SQL Server. They can be used in stored procedures and user-defined functions. These include string, numeric, time, date, interval, and system functions.” Dzisiaj coś mniej praktycznego, ale za to ciekawie wyglądającegoCzytaj dalej / Read more

Development, SQL Server

SOME | ANY | ALL

Z dokumentacji technet ( http://msdn.microsoft.com/en-us/library/ms175064(v=sql.105).aspx ; http://msdn.microsoft.com/en-us/library/ms178543(v=sql.105).aspx ) „Compares a scalar value with a single-column set of values.” Wielu z Was zapewne zna i korzystało z polecenia „IN”, które pozwala w prosty sposób sprawdzić w warunku zapytania, czy wskazana przez nas  wartość bieżącego rekordu występuje w innym zbiorze. Oczywiście w ten sposóbCzytaj dalej / Read more

Development, SQL Server

SET CONTEXT_INFO

Z dokumentacji technet ( http://msdn.microsoft.com/en-us/library/ms187768%28v=sql.105%29.aspx ) „Associates up to 128 bytes of binary information with the current session or connection. „ Niewiele osób o tym wie, ale SQL Server pozwala na ustawienie jednej zmiennej globalnej (typu binary(128)), dostępnej do odczytu i modyfikacji podczas działania wszystkich operacji wykonywanych w ramach sesji użytkownika.Czytaj dalej / Read more

Development, Przydatne skrypty, SQL Server

sys.dm_db_index_usage_stats

Z dokumentacji technet ( http://msdn.microsoft.com/en-us/library/ms188755%28v=sql.105%29.aspx ) „Every individual seek, scan, lookup, or update on the specified index by one query execution is counted as a use of that index and increments the corresponding counter in this view. Information is reported both for operations caused by user-submitted queries, and for operations causedCzytaj dalej / Read more