Text des DEFAULT Wertes einer Spalte anzeigen

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:

Code:

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:

Code:

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';

Noch kein Feedback
Einen Kommentar hinterlassen

Ihre E-Mail-Adresse wird nicht auf dieser Seite angezeigt.
SchlechtExzellent
(Zeilenumbrüche werden zu <br />)
(For my next comment on this site)
(Allow users to contact me through a message form -- Your email will not be revealed!)
Dies ist ein Captcha Bild. Es wird benutzt, um Massenzugriffe von Robotern zu verhindern.
Bitte gib die Zeichen des obigen Bildes ein. (Groß/Kleinschreibung ist wichtig)
Trackback-Adresse für diesen Eintrag
Dies ist ein Captcha Bild. Es wird benutzt, um Massenzugriffe von Robotern zu verhindern.
Bitte gib die Zeichen des obigen Bildes ein. (Groß/Kleinschreibung ist wichtig)