Что такое СУБД (Система управления базами данных)?

«Что такое СУБД (Система управления базами данных)?» — вопрос из категории Базы данных, который задают на 10% собеседований Java Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

СУБД (Система Управления Базами Данных) — это комплекс программного обеспечения, предназначенный для создания, ведения, управления и обеспечения эффективного доступа к базам данных.

Основные функции СУБД:

  • Управление данными: CRUD-операции (Create, Read, Update, Delete).
  • Целостность данных: Поддержка ограничений (constraints), транзакций с гарантиями ACID.
  • Безопасность: Аутентификация, авторизация, разграничение прав доступа.
  • Надежность: Механизмы резервного копирования и восстановления.
  • Производительность: Оптимизация запросов, кэширование, индексы.
  • Многопользовательский доступ: Контроль параллелизма и блокировок.

Примеры: MySQL, PostgreSQL, Oracle, Microsoft SQL Server.

Пример подключения и запроса на Java с использованием JDBC:

import java.sql.*;

public class JdbcExample {
    public static void main(String[] args) {
        String url = "jdbc:mysql://localhost:3306/test_db";
        String user = "root";
        String password = "password";

        try (Connection conn = DriverManager.getConnection(url, user, password);
             Statement stmt = conn.createStatement();
             ResultSet rs = stmt.executeQuery("SELECT id, name FROM users")) {

            while (rs.next()) {
                int id = rs.getInt("id");
                String name = rs.getString("name");
                System.out.println(id + ": " + name);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}