Skrypt zwracający szczegółową informację o partycjach i zakresach.

Przedstawiam poniżej skrypt, który zwraca szczegółową informację o partycjach i ich zakresach. W zmiennej @TableName należy podać nazwę badanej tabeli wraz ze schemą. DECLARE @TableName SYSNAME = 'sales.InvoiceLinesPartitioning’ SELECT OBJECT_SCHEMA_NAME(pstats.object_id) AS SchemaName ,OBJECT_NAME(pstats.object_id) AS TableName ,ps.NAME AS PartitionSchemeName ,ds.NAME AS PartitionFilegroupName ,pf.NAME AS PartitionFunctionName ,CASE pf.boundary_value_on_right WHEN 0 THEN 'Range Dowiedz się więcej…

Procedura zwracająca nazwę FG na podstawie funkcji, schemy i kolumny partycjonującej

Na co dzień pracując z tabelami i indeksami partycjonującymi stworzyłem procedurę, która na podstawie parametrów wejściowych zwraca nazwę grupy plików, na której założona jest wybrana partycja. Parametry wejściowe procedury to: @PartitionFunction – nazwa funkcji partycjonującej @PartitionSchema – nazwa schemy partycjonującej @RangeValue – wartość kolumny partycjonującej. Uwaga, obsługiwany jest typ INT Dowiedz się więcej…

Przenosimy pliki bazy tempdb

W trakcie pracy z SQL Serverem, mozemy dojść do wniosku, że np. ze względów wydajnościowych musimy dokonać zmiany lokalizacji plików bazy systemowej tempdb. W tym celu w pierwszej kolejności sprawdzamy lokalizację i nazwy plików wchodzących w skład bazy używając procedury składowanej sp_helpfile. USE tempdb GO EXEC sp_helpfile GO Procedura zwraca Dowiedz się więcej…

Problem z instalacją AdventureWorks2008R2 OLTP w SQL Server 2008R2 na WinXP SP3

Podczas instalacji skryptu dla bazy AdventureWorks2008R2 OLTP instalowanego na SQL Server 2008R2 w systemie Windows XP SP3 uzyskujemy błąd: „Operating system error -2147024891: „0x80070005 filestream” W internecie można znaleźć kilka różnych opisów tego problemu. Poniżej przedstawiam jedno z działających rozwiązań. Generalnie chodzi o to, że MS SQL Server 2008 R2 Dowiedz się więcej…

Różnice pomiędzy Delete i Truncate w T-sql

Przeglądając kod T-SQL można wywnioskować, że osoby mniej doświadczone używają zamiennie dwóch poleceń służących do usuwania wierszy: Delete i Trucate. Jaka jest między nimi różnica? Zarówno polecenie Delete jak i Truncate służy do usuwania wierszy z tabeli lecz występują znaczące różnice pomiędzy nimi: Delete – można użyć klauzuli WHERE w Dowiedz się więcej…