Átlagos időpont time adattípusra

A mai napi agymenés  Szüksége volt valakinek egy átlagszámításra... igen ám de time adattípusra. Az SQL Server nem igazán enged erre átlagot számolni, így meg kellett írni. A time típust nem igazán lehet konvertálni se float se int típusra - amik már használhatóak lennének az AVG függvénynek, így ez még egy kic... [More]

uniqueidentifier összehasonlítás SQL Server-ben

Na ez is egy őrült ötlet de miért ne... Vajon az alábbi lekérdezésnél melyik GUID nagyobb? DECLARE @A uniqueidentifier = '0CB2DC09-D93C-4CFF-8D49-000000000001'; DECLARE @B uniqueidentifier = '66454F18-F2D1-4934-85CD-000000000001'; SELECT @A AS [A], @B AS [B], CASE WHEN @A > @B THEN 'A' ELSE 'B' END AS [GuidCompare], CASE WHEN CAST(@A as varchar(36)) > CAST(@B AS varchar(36)) THEN 'A' ELSE 'B' END AS [StringCompare] GO Szerintem itt min... [More]

Damerau–Levenshtein distance in SQL

Couple of years ago I needed to implement a kind of fuzzy matching algorithm in SQL Server. Today I have just found my code I implemented it in SQL 2005 and it works on newer versions as well. Code is based on the Damerau–Levenshtein distance algorithm. I was using a SQL CLR user defined scalar function: inputs are 2 strings and returns a number between 0 and 1. If it is more close to 1 it means the two input strings are closer to each other. Of course SSIS Fuzzy Lookup Transformation may work b... [More]

Policy-Based Management és DBCC CHECKDB

English version is available at Technet Gallery: http://gallery.technet.microsoft.com/How-to-check-Last-known-0f93b4fa Az utóbbi időben igen sokszor van szerencsém a DBCC parancsokkal dolgozni. Most egy érdekes kérdést próbálok megválaszolni: hogyan tudjuk Policy-Based Management segítségével az adatbázisaink utolsó jó DBCC CHECKDB futását ellenőrizni? Ezt a kérdést ma egy fórumon tette fel valaki, majd az MCM tanulócsoport is rákapott Az alábbi megoldás született. A probléma Az SQL Server 20... [More]

Mikor használ a DBCC több processzort?

Na ez már érdekes téma! Van egy szerverem, amiben van 4 processzor (mag), de mindig csak egyet használt a DBCC CHECKDB. Kicsit utánajártam a dolognak: Csak akkor használja a több procit, amikor Enterprise Edition, illetve Developer vagy Eval edition van telepítve, A vizsgált táblán/táblákon nincs se CLR, se T-SQL alapú számított oszlop (computed column), A párhuzamos ... [More]

SQL MCM online tréning–1. hét

Már a 4. hetében járok a 7 hetes Quickstart’s SQL Server 2008 Microsoft Certified Master (MCM) Accelerated Exam Preparation Program tréningnek. Arra gondoltam, hogy a heti két alkalom főbb témáit és érdekességeit megosztom. Sajnos arra nem kaptam lehetőséget, hogy a Power Point prezentációkat és a trénerek által bemutatott mintakódokat, adatbázisokat megosszam, de így is érdekes lesz remélem Első körben egy rövid összefoglalással kezdeném, majd a heti téma kielemzésével folytatom: Az eddigi ... [More]

Backup WITH CHECKSUM

I’m attending on the Quickstart’s SQL Server 2008 Microsoft Certified Master (MCM) Accelerated Exam Preparation Program and a question came up yesterday: Can we use the WITH CHECKSUM with transaction log backups? The answer is pretty simple: yes, we can. Here is a sample script for evidence USE [master]; GO BACKUP DATABASE [AdventureWorks2012] TO DISK='c:\DbBackups\AW2012\aw2012full.bak' WITH INIT, CHECKSUM; GO BACKUP LOG [AdventureWorks2012] TO DISK='c:\DbBackups\AW2012\aw2012tr.bak' WIT... [More]

Adatbázisok méretének lekérdezése

Az alábbi lekérdezés segít megnézni, hogy mely adatbázisok, mennyi helyet foglalnak.   USE [tempdb] CREATE TABLE #DatabaseSize ( [database_name] sysname, [type_desc] nvarchar(50), [state_desc] nvarchar(50), [size_in_MB] bigint ); EXEC sp_MsForEachDb 'USE [?] INSERT INTO #DatabaseSize SELECT DB_NAME(), type_desc, state_desc, SUM(size * 8 / 1024) FROM sys.database_files GROUP BY type_desc, state_desc ' SELE... [More]

Adatbázis szintű jogok kilistázása

Az utóbbbi időben sokszor kérdezték különböző fórumokon, hogyan lehet kilistázni az adatbázis szintű jogokat. az alábbi script ezt megcsinálja: USE [?] GO SELECT DB_ID() AS [db_id], DB_NAME() AS [db_name], DPER.[class_desc], DPER.[permission_name], DPER.[state_desc], DPRI.[name], DPRI.[type_desc], CASE WHEN DPER.[class_desc] = 'DATABASE' THEN DB_NAME() WHEN DPER.[class_desc] = 'OBJECT_OR_COLUMN' AND DPER.[minor_id] = 0... [More]

SSMS kapcsolatok szinkódolása

Kedves kolléga Horváth Zoltán felfedezte, hogy az SQL Server Management Studio a query ablak alsó része más-más szinekben pompázik, amikor a fejlesztői vagy az éles rendszerhez kapcsolódik. Ennek az az oka, hogy az én regisztrált szervereimet importálta be a saját SSMS-ébe. Én pedig minden szervercsoporthoz külön szinkódot használok. A szinezésnek történelmi okai vannak: amikor először megjelent az SQL 2005-höz kiadott SSMS elkezdtem használni. Ez egy nagy változás volt az addigi Enterprise m... [More]