Scenario:
U werkt als SQL Server Developer / SQL Server DBA en u moet een lijst met tabellen uit een database halen met informatie als de tabel de primaire sleutelbeperking heeft of geen primaire sleutelbeperking heeft.Oplossing:
We gaan systeemweergaven in de SQL-serverdatabase gebruiken om een lijst met tabellen te krijgen met of zonder primaire sleutelbeperkingen.use YourDatabaseName
go
Select
T.Table_Catalog as DatabaseName,
T.Table_Schema AS TableSchema,
T.Table_Name AS TableName,
CCU.Column_Name AS ColumnName,
TC.Constraint_Name AS ConstraintName,
Case When TC.Constraint_Name is not Null Then 'Yes'
Else 'No' End as HasPrimaryKeyConstraint
From
information_schema.tables T
left join
information_Schema.Table_Constraints TC
on T.Table_Catalog=TC.Table_Catalog
and T.Table_Schema=TC.Table_Schema
and T.Table_Name=TC.Table_Name
and TC.Constraint_Type='PRIMARY KEY'
left JOIN
Information_Schema.constraint_column_usage CCU
on TC.Constraint_Name=CCU.Constraint_Name
and TC.Table_Name=CCU.Table_Name
and T.Table_Type='BASE TABLE' Ik voer bovenstaande code uit op een van mijn databases en een lijst met tabellen met Primary Key Constraint of zonder Primary Key Constraint.
Lijst met tabellen ophalen uit SQL Server-database met of zonder primaire sleutelbeperking - SQL Server / TSQL-zelfstudieVideodemo:alle tabellen met of zonder primaire sleutelbeperking in SQL Server-database ophalen