Overblog Folge diesem Blog
Edit post Administration Create my blog
Blog von Olaf Helper

Die letzten Objekt-Änderungen ermitteln

5. Februar 2009 , Geschrieben von Olaf Helper Veröffentlicht in #T-SQL

Wenn man alleine an einem Datenbank-Design für den MS SQL Server sitzt, weiß man, was man zuletzt so alles geändert hat. Arbeitet man im Team, sollte man es wissen, weil einem die Kollegen informieren und es natürlich auch eine Dokumentation mit Historie gibt.

Anders sieht es bei Datenbanken von Fremdherstellern aus, wie zum Beispiel eine zugekaufte ERP Software, hier wird man über als „intern“ betrachtete Änderung nicht informiert und die Update-Scripte liegen selten einem offen vor. Wenn man dann nicht per Profiler oder DDL Triggern die Änderungen mitprotokollieren lässt, weiß man nicht, was sich geändert hat und man wundert sich anschließend, das eigene Applikation, die auf die DB aufsetzen, nicht mehr funktionieren oder Auswertungen auf ein mal so merkwürdige Ergebnisse liefern.

Über das Feld modify_date des System-Views sys.objects kann man zumindest ermitteln, an welchen Objekten zuletzt Änderungen vorgenommen wurden; immerhin eine kleine Hilfe beim Versuch es nachzuvollziehen. 

 
-- Welche Objekte wurden zuletzt geändert?
 SELECT SCH.name AS ObjectSchemaName,  
  OBJ.name AS ObjectName, OBJ.type_desc AS ObjectType, 
  OBJ.modify_date AS LastModifyDate, 
  PAR.name AS ParentName, PAR.type_desc AS ParentObjectType 
 FROM sys.objects AS OBJ 
  INNER JOIN sys.schemas AS SCH 
  ON OBJ.schema_id = SCH.schema_id 
  LEFT JOIN sys.objects as PAR 
  ON OBJ.parent_object_id = PAR.object_id 
 ORDER BY OBJ.modify_date DESC 

Diesen Post teilen

Repost 0
Um über die neuesten Artikel informiert zu werden, abonnieren:

Kommentiere diesen Post