sql >> Database >  >> RDS >> Sqlserver

Hoe u alle tabellen met of zonder primaire sleutelbeperking in Sql Server-database kunt krijgen - SQL Server / TSQL-zelfstudie 59

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-zelfstudie



Videodemo:alle tabellen met of zonder primaire sleutelbeperking in SQL Server-database ophalen

  1. Inleiding tot Oracle RMAN

  2. ListView-besturing Drag-Drop Gebeurtenissen sorteren

  3. Hoe u SQL Server-gebeurtenissen vastlegt en analyseert

  4. Hoe de tabel in Oracle bij te werken