Share
Explore

Інструкція по завантаженню CSV файлів у Workbench

Для швидкого та простого додавання CSV файлів у локальну базу даних за допомогою Workbench виконайте наступні діі Оберіть схему до якої ви бажаєте додати дані
Add_csv_1.png
Оберіть Таблицю
Add_csv_2.png
Обираємо Table Data Import Wizard
Add_csv_3.png
Обираємо шлях до файлу CSV
Add_csv_4.png

Нажимаємо Next
Add_csv_5.png

Перевіряємо чи все вірно у нас обралось
Add_csv_6.png

Дивимось на Data Mapping - чи всі поля дійсні та співпадають, нажимаємо Next
Add_csv_7.png
Закінчюємо
Add_csv_8.png

Інструкція по завантаженню CSV файлів у PostgreSQL

Оберіть схему до якої ви бажаєте додати дані
Postgesql_1.png
Оберіть Таблицю, натисніть на таблицю в яку ви бажаєте додати дані, правой кнопкою миші, та оберить Import/Export Data
Postgesql_2.png
Двлі ми обираємо файл, де він знаходиться, та нажимаємо кнопку Відкрити
Postgesql_3.png
Передивляємось формат, нас цікавить CSV та нажимаэмо кнопку ОК
Postgesql_4.png
Впевнюємось що імпорт пройошов успішно
Postgesql_5.png
Або ні
Postgesql_6.png
Дивимось LOG виконання
Postgesql_7.png
Є декілька відмінностей від завантаження у Workbench. У більшості можна буде зрозуміти за описом помилки.
Відмінності від імпорту у Workbench:
інший сінтаксис CREATE стейтменту
CREATE TABLE employees ( employee_id SERIAL PRIMARY KEY, first_name VARCHAR(50), last_name VARCHAR(50), position VARCHAR(50), department VARCHAR(50), salary DECIMAL(10, 2), hire_date DATE );
Структура CSV файлу не має містить headers\заголовків у файлі
Тут є приклади запитів по створенню таблиць та самі CSV файли
CREATE TABLE employees (
employee_id SERIAL PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
position VARCHAR(50),
department VARCHAR(50),
salary DECIMAL(10, 2),
hire_date DATE
);

CREATE TABLE products (
product_id SERIAL PRIMARY KEY,
product_name VARCHAR(100),
category VARCHAR(50),
price DECIMAL(10, 2),
stock_quantity NUMERIC(10, 2),
supplier VARCHAR(50)
);

CREATE TABLE sales (
sale_id SERIAL PRIMARY KEY,
employee_id INT,
product_id INT,
quantity_sold INT,
sale_date DATE,
sale_amount NUMERIC(10, 2),
FOREIGN KEY (employee_id) REFERENCES employees(employee_id),
FOREIGN KEY (product_id) REFERENCES products(product_id)
);

CREATE TABLE customers (
customer_id SERIAL PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
email VARCHAR(100),
phone VARCHAR(30),
address VARCHAR(100),
city VARCHAR(50),
state VARCHAR(50),
zip_code VARCHAR(10)
);

CREATE TABLE orders (
order_id SERIAL PRIMARY KEY,
customer_id INT,
order_date DATE,
shipping_date DATE,
order_status VARCHAR(20),
total_amount DECIMAL(10, 2),
FOREIGN KEY (customer_id) REFERENCES customers(customer_id)
);

INSERT INTO employees (first_name, last_name, position, department, salary, hire_date)
VALUES
('John', 'Doe', 'Sales Manager', 'Sales', 75000.00, '2019-03-15'),
('Jane', 'Smith', 'Developer', 'IT', 85000.00, '2020-06-22'),
('Emily', 'Johnson', 'Accountant', 'Finance', 65000.00, '2021-01-10');

INSERT INTO products (product_name, category, price, stock_quantity, supplier)
VALUES
('Laptop', 'Electronics', 1200.00, 50, 'Tech Supplies Co.'),
('Office Chair', 'Furniture', 150.00, 200, 'Office Mart'),
('Notebook', 'Stationery', 2.50, 1000, 'Stationery World');

INSERT INTO sales (employee_id, product_id, quantity_sold, sale_date, sale_amount)
VALUES
(1, 1, 2, '2023-02-15', 2400.00),
(2, 2, 5, '2023-03-01', 750.00),
(3, 3, 10, '2023-04-10', 25.00);

INSERT INTO customers (first_name, last_name, email, phone, address, city, state, zip_code)
VALUES
('Alice', 'Brown', 'alice.brown@example.com', '123-456-7890', '123 Maple St', 'Springfield', 'IL', '62701'),
('Bob', 'Green', 'bob.green@example.com', '234-567-8901', '456 Oak St', 'Greenville', 'CA', '90210'),
('Charlie', 'White', 'charlie.white@example.com', '345-678-9012', '789 Pine St', 'Columbus', 'OH', '43215');

INSERT INTO orders (customer_id, order_date, shipping_date, order_status, total_amount)
VALUES
(1, '2023-02-10', '2023-02-15', 'Shipped', 2400.00),
(2, '2023-03-05', '2023-03-08', 'Shipped', 750.00),
(3, '2023-04-01', '2023-04-05', 'Shipped', 25.00);
Посилання на csv файли є у LMS (треба видалити заголовки)
Якщо у вас у таблицях були до цього дані, то у вас виникне помилка дублікатніх даних, то треба до цього видалити дані що були у таблиці
TRUNCATE TABLE customers;
А якщо є посилання на звнішний ключ, то варто видалити дані по іншому
TRUNCATE TABLE products CASCADE;

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.