Inzwischen besitze ich eine ganze Reihe von Büchern von Joe Celko, und ich muss sagen, dass mit jedem Buch der Deja-Vu Effekt ansteigt.
Vieles von dem, was in "Thinking in sets" geboten wird, kann man in der einen oder anderen Form auch in früheren Büchern, und natürlich auch in den diversen Communities, in denen Celko präsent ist, nachlesen.
Datenmodellierung ist eine Disziplin, die immer wieder Anlass zu leidenschaftlich geführten Diskussionen bietet. Dabei sind die Fronten zwischen den Theoretikern auf der einen und den Praktikern auf der anderen Seite verhärtet.
SELECT
OBJECTPROPERTY(O.[OBJECT_ID], 'CnstIsUpdateCascade') AS updcascade,
OBJECTPROPERTY(O.[OBJECT_ID], 'CnstIsDeleteCascade') AS delcascade,
[name]
FROM
sys.objects O
WHERE
OBJECTPROPERTY(O.[OBJECT_ID], 'IsForeignKey') = 1 AND
(OBJECTPROPERTY(O.[OBJECT_ID], 'CnstIsUpdateCascade') = 1 OR OBJECTPROPERTY(O.[OBJECT_ID], 'CnstIsDeleteCascade') = 1)
ORDER BY 1 DESC, 3
DECLARE @TableID int
SELECT @TableID = OBJECT_ID ('Enter TableName here')
SELECT
OBJECT_NAME (IXStats.[object_id]) AS ObjectName,
IXStats.index_type_desc,
IXStats.avg_record_size_in_bytes
FROM
sys.dm_db_index_physical_stats (DB_ID(), @TableID, OBJECTPROPERTY (@TableID, 'TableHasClustIndex'), 0, 'SAMPLED') IXStats