Text des DEFAULT Wertes einer Spalte anzeigen

By Frank Kalis

Posted on Sep 8, 2010 von in SQL Server

Manchmal kann es nützlich sein, den Wert oder den Ausdruck einer DEFAULT Einschränkung abzufragen.

Hier ist eine Variante die auch noch unter SQL Server 2000 funktioniert:

SELECT
    def.text
FROM 
    sysobjects sysObj (NOLOCK)
    JOIN 
    syscolumns sysCol (NOLOCK) ON sysCol.id = sysObj.id
    LEFT JOIN 
    syscomments def (NOLOCK) ON def.id = sysCol.cdefault AND def.colid = 1
WHERE 
    sysObj.name = 'MeineTabelle' AND 
    sysObj.Type = 'U' AND 
    sysCol.name = 'MeineSpalte';

Ab SQL Server 2005 würde man wahrscheinlich stattdessen folgendes ausführen:

SELECT
    DC.definition
FROM
    sys.default_constraints DC      
    JOIN
    sys.columns C ON DC.parent_object_id = C.object_id AND DC.parent_column_id = C.column_id
WHERE
    OBJECT_NAME(DC.parent_object_id) = 'MeineTabelle' AND 
    C.name = 'MeineSpalte';

Dieser Eintrag wurde eingetragen von und ist abgelegt unter SQL Server. Tags: , , ,

Noch kein Feedback


Formular wird geladen...