💀
Второй курс РПО
Основы проектирования баз данных
Основы проектирования баз данных
  • Понятия баз данных
  • Типы моделей данных
    • Реляционные базы данных
  • Реляционная алгебра
  • Модель процессов
  • Проектирование базы данных
  • Нормальные формы
    • Определения, и самое важное
  • Моделирование базы
    • Практическая работа: Решение
    • Для тех у кого iq как у Антона
  • Инструменты проектирования
  • Проектирование БД
  • Ключи и объекты
  • SQL Операции
  • Группировка данных
  • Пользовательский интерфейс
  • Проектирование БД
  • Управление таблицами
  • Ключи и индексы
  • Сортировка и поиск
    • 🤪Короткая версия
  • Работа с файлами
  • Запись массива в таблицу
  • Меню баз данных
  • Рабочие окна
  • Создание формы
  • Создание проекта БД и интерфейса
  • Ограничения полей
  • Работа с таблицами
  • Обработка транзакций
Powered by GitBook
On this page
  • 1. Поля в базах данных: основные понятия
  • 2. Задание значений для поля
  • Примеры типов данных
  • 3. Ограничения поля
  • 4. Проверка введенного в поле значения
  • 5. Отображение числовых данных
  • 6. Отображение данных типа DATE

Ограничения полей

05.12.2024

1. Поля в базах данных: основные понятия

Поле – это минимальная единица данных в таблице базы данных. Оно представляет собой столбец, в котором хранятся однотипные данные.

Пример: В таблице Сотрудники поле Имя хранит строки (имена), а поле Дата_Рождения – даты.


2. Задание значений для поля

Для задания значений полей применяются:

  1. Типы данных Каждое поле имеет свой тип данных, который определяет, какие значения в нем могут храниться.

Примеры типов данных

Тип данных
Описание
Примеры

INT

Целые числа

1, 25, -100

FLOAT

Числа с плавающей точкой

3.14, -0.5

VARCHAR(n)

Текстовая строка длиной до n символов

"Привет", "123"

DATE

Дата

"2023-12-31"

BOOLEAN

Логическое значение

TRUE, FALSE

  1. Значение по умолчанию При создании таблицы можно задать значение по умолчанию. Если пользователь не укажет значение при добавлении данных, поле заполнится автоматически.

sql
CREATE TABLE Сотрудники (
    ID INT,
    Имя VARCHAR(50),
    Возраст INT DEFAULT 18
);

Пример: Если добавить запись INSERT INTO Сотрудники (ID, Имя) VALUES (1, 'Анна');, то поле Возраст автоматически примет значение 18.


3. Ограничения поля

Ограничения помогают контролировать данные в поле, предотвращая ошибки.

Ограничение
Описание

NOT NULL

Поле не может быть пустым (обязательно для заполнения).

UNIQUE

Значение в поле должно быть уникальным.

CHECK

Проверяет выполнение заданного условия.

DEFAULT

Устанавливает значение по умолчанию.

PRIMARY KEY

Уникальное и обязательное поле, идентифицирующее строку.

FOREIGN KEY

Ссылка на ключ в другой таблице (связи между таблицами).

Пример:

sql
CREATE TABLE Продукты (
    ID INT PRIMARY KEY,
    Название VARCHAR(50) NOT NULL,
    Цена FLOAT CHECK (Цена > 0)
);

Объяснение:

  • Поле ID должно быть уникальным.

  • Поле Название нельзя оставить пустым.

  • Поле Цена принимает только положительные числа.


4. Проверка введенного в поле значения

Проверка значений реализуется:

  1. Ограничениями в структуре таблицы (CHECK, NOT NULL).

  2. Программными средствами – через триггеры, процедуры или обработчики ввода.

Пример с использованием триггера:

sql
CREATE TRIGGER ПроверкаЦены
BEFORE INSERT ON Продукты
FOR EACH ROW
BEGIN
    IF NEW.Цена <= 0 THEN
        SIGNAL SQLSTATE '45000'
        SET MESSAGE_TEXT = 'Цена должна быть больше 0';
    END IF;
END;

5. Отображение числовых данных

Числовые данные могут быть показаны в таблицах с форматированием:

  • Количество знаков после запятой (например, DECIMAL(10, 2) – число с двумя десятичными знаками).

  • Формат валюты: добавление символов валют (например, $100.00).

Пример SQL-запроса для форматирования чисел:

sql
SELECT FORMAT(Цена, 2) AS Цена_с_форматом FROM Продукты;

6. Отображение данных типа DATE

Даты хранятся в формате YYYY-MM-DD (год-месяц-день).

Основные функции для работы с датами в SQL:

Функция
Описание
Пример результата

CURRENT_DATE()

Текущая дата

"2024-12-05"

DATE_FORMAT()

Форматирование даты в нужном виде

"05/12/2024"

DATEDIFF()

Разница между датами в днях

10

NOW()

Текущие дата и время

"2024-12-05 14:30:00"

Пример форматирования даты:

sql
SELECT DATE_FORMAT(Дата_Рождения, '%d/%m/%Y') AS Отформатированная_Дата FROM Сотрудники;

Результат: Если Дата_Рождения = '1990-01-15', запрос вернет '15/01/1990'.

PreviousСоздание проекта БД и интерфейсаNextРабота с таблицами

Last updated 5 months ago