sql >> Databáze >  >> RDS >> Sqlserver

SQL Server 2008 – Získejte omezení tabulky

Měli byste použít aktuální sys zobrazení katalogu (pokud používáte SQL Server 2005 nebo novější - sysobjects zhlédnutí jsou zastaralé a měli byste se jim vyhnout) – podívejte se na rozsáhlou dokumentaci MSDN SQL Server Books Online o zobrazení katalogu zde.

Existuje několik pohledů, které by vás mohly zajímat:

  • sys.default_constraints pro výchozí omezení sloupců
  • sys.check_constraints pro kontrolní omezení u sloupců
  • sys.key_constraints pro klíčová omezení (např. primární klíče)
  • sys.foreign_keys pro vztahy s cizím klíčem

a mnohem více - podívejte se na to!

Můžete se dotazovat a připojit se k těmto pohledům, abyste získali potřebné informace – např. toto zobrazí seznam tabulek, sloupců a všech výchozích omezení, která jsou na nich definována:

SELECT 
    TableName = t.Name,
    ColumnName = c.Name,
    dc.Name,
    dc.definition
FROM sys.tables t
INNER JOIN sys.default_constraints dc ON t.object_id = dc.parent_object_id
INNER JOIN sys.columns c ON dc.parent_object_id = c.object_id AND c.column_id = dc.parent_column_id
ORDER BY t.Name


  1. Vkládání národních znaků do sloupce Oracle NCHAR nebo NVARCHAR nefunguje

  2. Nastavte výchozí hodnotu pro sloupec v SQLite:DEFAULT Constraint

  3. Jak předat XML jako parametr do uložené procedury v Oracle

  4. Proč potřebujete datové modelování?