- INSERT, добавление данных
- Constraints, ограничении
- DELETE, удаление данных
- UPDATE, обновление данных
- Импорт excel таблицу в базу данных
1. INSERT, добавление данных
INSERT - добавить
INSERT INTO карты (id, владелец)
VALUES (1, 'Эрлан');
INSERT INTO станции (id, название, линия) VALUES
(1, 'Ала-Тоо', 'M1');
INSERT INTO оплаты (id, карта_id, станция_id, тип, сумма) VALUES
(1, 1, 1, 'вход', 0.10),
(2, 1, 4, 'выход', 0.10);
INSERT INTO станции (id, название, линия) VALUES
(2, 'Дордой', 'M1'),
(3, 'Байтик', 'M2'),
(4, 'Московская', 'M2'),
(5, 'Асанбай', 'M1'),
(6, 'Фрунзе', 'M2');
2. Constraints, ограничении
Когда мы создавали таблицу карты, мы указывали что id должны быть уникальными и не должны повторятся. Давайте постараемя добавить еще id=1, мы знаем что у нас в таблице есть карта с id 1.
INSERT INTO карты (id, владелец)
VALUES (1, 'Эрлан');
ОШИБКА: duplicate key value violates unique constraint "карты_pkey"
Key (id)=(1) already exists.
Ошибка: нарушено ограничение уникальности первичного ключа "карты_pkey"
Детали: ключ (id) = (1) уже существует в таблице.
Этот запрос тоже не сработает, так как мы указывали CHECK(тип IN ('вход', 'выход')) что данные столбца "тип" должны быть либо "вход" или "выход".
INSERT INTO оплаты (id, карта_id, станция_id, тип, сумма) VALUES
(1, 1, 1, 'входэээээ', 0.10),
(2, 1, 4, 'выходжжжжжж', 0.10)
ОШИБКА: new row for relation "оплаты" violates check constraint "оплаты_тип_check"
Failing row contains (1, 1, 1, входэээээ, 2025-11-26 16:55:53.500332, 0.10).
Ошибка: новая строка для таблицы "оплаты" нарушает ограничение CHECK "оплаты_тип_check"
Подробности: проблемная строка содержит (1, 1, 1, входэээээ, 2025-11-26 16:55:53.500332, 0.10).
DELETE, удаление данных
Удалить все данные из таблицы оплаты.
DELETE FROM оплаты;
DELETE FROM оплаты
WHERE тип='вход';
INSERT INTO оплаты (id, карта_id, станция_id, тип, дата_время, сумма) VALUES
(3, 1, 1, 'вход', '2025-08-01 08:00:00', 0.10),
(4, 1, 4, 'выход', '2025-08-01 08:30:00', 0.10)
SELECT * FROM оплаты
WHERE дата_время>='2025-11-26'
DELETE FROM оплаты
WHERE дата_время='2025-08-01'
DELETE FROM оплаты
WHERE карта_id=(
SELECT id FROM карты
WHERE владелец='Эрлан'
);
4. UPDATE, обновление данных
UPDATE - обновить
SET - установить / присвоить
UPDATE карты
SET владелец='Эрдан'
WHERE владелец='Эрлан';
Обновить таблицу карты так, чтобы для всех записей, где владелец равен 'Эрлан', установить значение владелец равным 'Эрдан'.
5. Импорт excel таблицу в базу данных
1. Подготовка файла Excel (Конвертация в CSV)
Pgadmin4 не умеет напрямую работать с excel файлами. Поэтому нужно сперва сохранить ваш excel файл как csv.
Файл->Сохранить как
Выберите тип файла csv.
excel таблица клиенты
2. Импорт данных через pgAdmin 4
2.1 Перед импортом csv файла, нужно сперва создать таблицу с нужными столбцами с нужными типами данных.
CREATE TABLE клиенты (
id INTEGER,
имя TEXT NOT NULL,
год_рождения DATE,
PRIMARY KEY (id)
);
2.2
- Кликните правой кнопкой мыши на таблицу клиенты
- Выберите опцию Import/Export Data... (Импорт/Экспорт данных...) 2.3
- В открывшемся окне настройте параметры:
- Формат: csv
- Кодировка: UTF8
- Параметры: включить Заголовок
Top comments (0)