SQL Server « COTEC-IT-Systeme GmbH – Blog
Zurück zum Start

Archiv für die Kategorie ‘SQL Server’

Queries, welche kürzlich ausgeführt wurden

Dienstag, 25. Januar 2011

Ohne viele Worte:

Um sich die zuletzt ausgeführten Abfragen (Queries) im SQL Server anzeigen zu lassen, kann folgender Konstrukt verwendet werden (gefunden unter http://www.sqlservercentral.com/Forums/Topic676273-149-1.aspx):

[code lang=“sql“]SELECT deqs.last_execution_time AS [Time], dest.text AS [Query]
FROM sys.dm_exec_query_stats AS deqs
CROSS APPLY sys.dm_exec_sql_text(deqs.sql_handle) AS dest
ORDER BY deqs.last_execution_time DESC[/code]

Nach meinem Dafürhalten, dürfte es ab SQL 2005 (also auch 2008 / 2008 R2) funktionieren.

SQL Server: Batch für die Auflistung aller vorhandenen Tabellen

Donnerstag, 16. Juli 2009

Für die Auflistung aller vorhandenen Tabellen einer Datenbank ab SQL Server 2005 inklusive der Zeilenanzahl und Größe eignet sich folgender Batch:

[sql wraplines=“false“ highlight=“10″]
DECLARE @tabName NVARCHAR(128)

CREATE TABLE #res (name NVARCHAR(128), [rows] NVARCHAR(100), reserved NVARCHAR(100), data NVARCHAR(100), index_size NVARCHAR(100), unused NVARCHAR(100))
DECLARE crsr CURSOR FOR SELECT TABLE_SCHEMA + ‚.‘ + TABLE_NAME FROM INFORMATION_SCHEMA.Tables
OPEN crsr

FETCH NEXT FROM crsr INTO @tabName
WHILE @@FETCH_STATUS = 0
BEGIN
INSERT #res EXEC sp_spaceused @tabName
FETCH NEXT FROM crsr INTO @tabName
END

CLOSE crsr
DEALLOCATE crsr
SELECT * FROM #res
DROP TABLE #res
[/sql]

Installation des SQL Servers 2008 schlägt fehl

Mittwoch, 15. Juli 2009

Wenn die Installation von SQL Server 2008 Standard fehl schlägt, kann der Grund mitunter die vorherige Installation des MSXML Core Services 6.0 Service Pack 2 sein. Das Problem trat auch schon bei SQL Server 2005 auf (http://support.microsoft.com/kb/968749)

Umgehen lässt sich das Problem indem die Insallation des MSXML Core Services 6.0 Service Pack 2 „versteckt“. Dies ist mit dem Tool „Windows Installer Clean Up“ von Microsoft (http://support.microsoft.com/kb/290301) möglich, welches nur die Installationsinformationen entfernt, die installierten Dateien jedoch unberührt lässt. Genauere Informationen dazu finden sich unter http://support.microsoft.com/kb/968749).

Ein Fehlerprotokoll entsprechenden fehlgeschlagenen Installation von SQL Server 2008 auszugsweise wie folgt:

Overall summary:
  Final result:                  SQL Server installation failed. To continue, investigate the reason for the failure, correct the problem, uninstall SQL Server, and then rerun SQL Server Setup.
  Exit code (Decimal):           -2068643839
  Exit facility code:            1203
  Exit error code:               1
  Exit message:                  SQL Server installation failed. To continue, investigate the reason for the failure, correct the problem, uninstall SQL Server, and then rerun SQL Server Setup.
  Start time:                    2009-07-15 08:37:37
  End time:                      2009-07-15 09:04:11
  Requested action:              Install
  Log with failure:              C:\Programme\Microsoft SQL Server\100\Setup Bootstrap\Log\20090715_083611\Msxml6_Cpu32_1.log
  Exception help link:           http://go.microsoft.com/fwlink?LinkId=20476&ProdName=Microsoft+SQL+Server&EvtSrc=setup.rll&EvtID=50000&ProdVer=10.0.1600.22
Machine Properties:
  Machine name:                  SERVER
  Machine processor count:       2
  OS version:                    Windows Server 2003
  OS service pack:               Service Pack 2
  OS region:                     Deutschland
  OS language:                   Deutsch (Deutschland)
  OS architecture:               x86
  Process architecture:          32 Bit
  OS clustered:                  No
Product features discovered:
[...]

Package properties:
  Description:                   SQL Server Database Services 2008
  SQLProductFamilyCode:          {628F8F38-600E-493D-9946-F4178F20A8A9}
  ProductName:                   SQL2008
[...]
Detailed results:
  Feature:                       Database Engine Services
  Status:                        Failed: see logs for details
  MSI status:                    Failed: see details below
  MSI error code:                0x5EBE5729
  MSI log file location:         C:\Programme\Microsoft SQL Server\100\Setup Bootstrap\Log\20090715_083611\Msxml6_Cpu32_1.log
  MSI error description:
  Configuration status:          Passed
  Feature:                       SQL Server Replication
  Status:                        Failed: see logs for details
  MSI status:                    Failed: see details below
  MSI error code:                0x5EBE5729
  MSI log file location:         C:\Programme\Microsoft SQL Server\100\Setup Bootstrap\Log\20090715_083611\Msxml6_Cpu32_1.log
  MSI error description:
  Configuration status:          Passed
  Feature:                       Full-Text Search
  Status:                        Failed: see logs for details
  MSI status:                    Failed: see details below
  MSI error code:                0x5EBE5729
  MSI log file location:         C:\Programme\Microsoft SQL Server\100\Setup Bootstrap\Log\20090715_083611\Msxml6_Cpu32_1.log
  MSI error description:
  Configuration status:          Passed
  Feature:                       Management Tools - Basic
  Status:                        Failed: see logs for details
  MSI status:                    Failed: see details below
  MSI error code:                0x5EBE5729
  MSI log file location:         C:\Programme\Microsoft SQL Server\100\Setup Bootstrap\Log\20090715_083611\Msxml6_Cpu32_1.log
  MSI error description:
  Configuration status:          Passed
Rules with failures:
Global rules:
Scenario specific rules:
Rules report file:               C:\Programme\Microsoft SQL Server\100\Setup Bootstrap\Log\20090715_083611\SystemConfigurationCheck_Report.htm

SQL Server ERRORLOG-Datei verkleinern

Dienstag, 26. Mai 2009

Wenn der SQL Server die ERRORLOG-Datei des SQL Servers übermäßig angewachsen ist, sich aber nicht löschen lässt, weil der Server sie festhält, kann mit:

[sql light=“true“]EXEC sp_cycle_errorlog[/sql]

ein neues ERRORLOG „erzwungen“ werden.

Aktuelles Datum ohne Zeitinformationen im SQL Server ermitteln

Dienstag, 26. Mai 2009

Mitunter ist es sinnvoll Datumsinformationen im SQL Server (bis 2005), ohne den Zeitanteil zu hinterlegen. Ein solches Datum kann unter Verwendung von SQL ermitteln werden. Um das aktuelle Datum zu ermitteln, welches jedoch keine Informationen bezüglich der Zeit enthält – also im Grunde auf 0:00 Uhr zeigt, eignet sich folgender SQL-String:

[sql]
DECLARE @date datetime

SET @date = dateadd(dd,0, datediff(dd,0,getdate()))[/sql]