Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да получите всички таблици със или без ограничение на първичния ключ в базата данни на Sql сървър - SQL Server / TSQL урок 59

Сценарий:

Вие работите като SQL Server Developer / SQL Server DBA и трябва да получите списък с таблици от база данни с информация дали таблицата има ограничение за първичен ключ или няма ограничение за първичен ключ.

Решение:

Ще използваме системни изгледи в базата данни на SQL сървър, за да получим списък с таблици със или без ограничения за първичен ключ.

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'
 
Изпълнявам горния код в една от моята база данни и списък с таблици с ограничение на първичен ключ или без ограничение на първичен ключ.
Вземете списък с таблици от базата данни на SQL Server със или без ограничение на първичния ключ - SQL Server / TSQL урок



Видео демонстрация:Как да получите всички таблици със или без ограничение на първичния ключ в базата данни на Sql сървър

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да посочите различен номер на порт в SQL Management Studio?

  2. Генерирайте диаграма на връзката на таблицата от съществуваща схема (SQL Server)

  3. Как да намерите оптималния уникален идентификатор в таблица в SQL Server:sp_special_columns

  4. Защо ISNUMERIC('.') връща 1?

  5. Не може да се зареди DLL 'SqlServerSpatial.dll'