SQL

Как подключить базу данных SQL к Visual Studio

Подключить базу данных SQL к Visual Studio можно двумя путями: через окно Server Explorer для просмотра таблиц и через строку подключения в коде проекта. Если вы просто хотите открыть таблицы и проверить данные, хватит Server Explorer. Если приложение должно читать и записывать данные, нужна строка подключения и код, который выполняет запросы

Сначала убедитесь, что сама база доступна вне Visual Studio. Откройте SSMS, подключитесь к серверу и выполните простой запрос. Если SSMS не подключается, Visual Studio тоже не спасет ситуацию: проблема в сервере, имени экземпляра, службе SQL Server, порте или правах

Что нужно знать перед подключением

Для SQL Server обычно нужны:

  • имя сервера, например localhost, .\SQLEXPRESS или DESKTOP-01\SQLEXPRESS
  • имя базы данных
  • тип входа: Windows Authentication или SQL Server Authentication
  • пользователь и пароль, если используется SQL-аутентификация
  • понимание, где будет храниться строка подключения

Для учебного проекта на своем компьютере проще начать с Windows Authentication. Для приложения, которое будет работать у других пользователей или на сервере, параметры подключения нужно продумывать отдельно

Подключение через Server Explorer

Откройте Visual Studio и перейдите в View -> Server Explorer. Дальше:

  1. Нажмите правой кнопкой на Data Connections
  2. Выберите Add Connection
  3. В качестве источника выберите Microsoft SQL Server
  4. Укажите имя сервера
  5. Выберите тип аутентификации
  6. Выберите базу из списка
  7. Нажмите Test Connection

Если проверка прошла, база появится в Server Explorer. Можно раскрыть Tables, открыть таблицу и посмотреть данные. Это удобно для проверки, но не заменяет нормальную работу с базой в коде

Строка подключения для проекта .NET

Для простого подключения к локальному SQL Server Express строка может выглядеть так:

Server=.\SQLEXPRESS;Database=ShopDemo;Trusted_Connection=True;TrustServerCertificate=True;

Если используется логин SQL Server:

Server=localhost\SQLEXPRESS;Database=ShopDemo;User Id=app_user;Password=strong_password;TrustServerCertificate=True;

Не храните реальные пароли прямо в коде, особенно если проект попадет в репозиторий. Для учебного примера это допустимо на локальной машине, но для реального проекта используйте секреты, переменные окружения или защищенную конфигурацию

Проверочный запрос в C#

Минимальный пример с Microsoft.Data.SqlClient:

using Microsoft.Data.SqlClient;

var connectionString = "Server=.\\SQLEXPRESS;Database=ShopDemo;Trusted_Connection=True;TrustServerCertificate=True;";

using var connection = new SqlConnection(connectionString);
await connection.OpenAsync();

using var command = new SqlCommand("SELECT COUNT(*) FROM products", connection);
var count = (int)await command.ExecuteScalarAsync();

Console.WriteLine($"Товаров в базе: {count}");

Если проект не видит Microsoft.Data.SqlClient, установите пакет через NuGet. В новых проектах .NET лучше использовать именно Microsoft.Data.SqlClient, а не старые примеры из случайных инструкций

Как проверить базу перед подключением

В SSMS выполните:

USE ShopDemo;
GO

SELECT TOP 5 *
FROM products;

Если таблицы products нет, создайте тестовую:

CREATE TABLE products (
    id int IDENTITY(1,1) PRIMARY KEY,
    name nvarchar(100) NOT NULL,
    price decimal(10,2) NOT NULL
);

INSERT INTO products (name, price)
VALUES (N'Книга по SQL', 990.00);

Только после этого имеет смысл запускать код в Visual Studio. Так вы отделите ошибку подключения от ошибки в самой базе

Мини-практика

Создайте консольный проект, добавьте пакет Microsoft.Data.SqlClient, проверьте строку подключения и выведите количество строк из таблицы. Затем поменяйте имя базы в строке подключения на неправильное и посмотрите, какую ошибку вернет приложение. Это полезнее, чем просто получить успешный запуск: вы начнете узнавать типичные сообщения об ошибках

Частые ошибки

  • Указывают localhost, хотя сервер установлен как .\SQLEXPRESS
  • Не запускают службу SQL Server
  • Пытаются подключиться к базе, которой нет на сервере
  • Используют SQL-логин, но SQL-аутентификация отключена
  • Хранят пароль прямо в коде рабочего проекта
  • Не ставят NuGet-пакет для клиента SQL Server

Что почитать дальше по SQL

Если нужен общий маршрут по теме, откройте рубрику SQL. Для соседних задач пригодятся эти разборы:

Подписаться
Уведомить о
guest
0 комментариев
Старые
Новые Популярные

Настройки cookie

0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x