Схема данных в SQL Server может означать две разные вещи. Первое — schema как пространство имен, например dbo, sales, hr. Второе — общая структура базы: таблицы, столбцы, связи, ключи и ограничения. В поисковых запросах чаще всего пользователь хочет увидеть именно структуру базы и понять, как таблицы связаны между собой
Начать можно с Object Explorer в SSMS:
Databases → нужная база → Tables
Но для точной проверки удобнее использовать SQL-запросы к системным представлениям
Как посмотреть таблицы и схемы
В SQL Server таблица часто записывается как schema.table, например dbo.Products
Посмотреть список таблиц можно так:
SELECT
s.name AS schema_name,
t.name AS table_name
FROM sys.tables t
JOIN sys.schemas s ON t.schema_id = s.schema_id
ORDER BY s.name, t.name;
Так вы увидите, в каких схемах находятся таблицы. Это полезно, если в базе не только dbo
Как посмотреть столбцы таблицы
Для конкретной таблицы:
SELECT
c.name AS column_name,
ty.name AS data_type,
c.max_length,
c.is_nullable
FROM sys.columns c
JOIN sys.types ty ON c.user_type_id = ty.user_type_id
WHERE c.object_id = OBJECT_ID('dbo.Products')
ORDER BY c.column_id;
Этот запрос показывает столбцы, типы данных, длину и признак допустимости NULL
Как посмотреть связи между таблицами
Связи обычно задаются внешними ключами. Посмотреть их можно так:
SELECT
fk.name AS foreign_key_name,
OBJECT_NAME(fk.parent_object_id) AS child_table,
OBJECT_NAME(fk.referenced_object_id) AS parent_table
FROM sys.foreign_keys fk
ORDER BY child_table, parent_table;
Если внешних ключей нет, это не всегда значит, что связи отсутствуют логически. Иногда приложения связывают таблицы по полям, но база не хранит ограничение. Для поддержки и аналитики это хуже, потому что структуру сложнее читать
Диаграмма базы в SSMS
В SSMS есть раздел Database Diagrams, если компонент доступен и есть права. Диаграмма помогает визуально увидеть таблицы и связи, но в реальной базе она может быть неполной или устаревшей
Поэтому диаграмму лучше использовать как подсказку, а не как единственный источник истины. SQL-запросы к системным таблицам надежнее для проверки
Мини-практика
Подключитесь к учебной базе и выполните запрос на список таблиц
SELECT
s.name AS schema_name,
t.name AS table_name
FROM sys.tables t
JOIN sys.schemas s ON t.schema_id = s.schema_id
ORDER BY s.name, t.name;
Затем выберите одну таблицу и посмотрите ее столбцы через sys.columns. Так вы начнете читать схему базы не только глазами в интерфейсе, но и через SQL
Частые ошибки
Первая ошибка — путать схему dbo и схему данных как структуру базы. dbo — это namespace, а структура базы шире
Вторая ошибка — смотреть только таблицы и не смотреть внешние ключи. Без связей непонятно, как таблицы работают вместе
Третья ошибка — считать диаграмму в SSMS абсолютной правдой. Если в базе нет внешних ключей, диаграмма может не показать реальные логические связи
Что почитать дальше по SQL
Если нужен общий маршрут по теме, откройте рубрику SQL. Для соседних задач пригодятся эти разборы:
- SQL Server Configuration Manager: где открыть и что в нем смотреть
- Как базу данных Access сделать SQL: перенос в SQL Server без иллюзий
- Как перенести базу данных SQL Server на другой диск
- Как создать базу данных в MS SQL Server



