Я просмотрел несколько вопросов на этом сайте и не могу найти ответ на вопрос: как создать несколько новых таблиц в базе данных (в моем случае я использую PostgreSQL) из нескольких исходных файлов CSV, где столбцы таблицы новой базы данных точно отражают данные в столбцах CSV?
Я могу просто написать синтаксис CREATE TABLE, и я могу прочитать строки/значения CSV файла (ов), но существует ли уже метод для проверки файлов (ов) CSV и точного определения типа столбца? Прежде чем я построил свой собственный, я хотел проверить, действительно ли это уже существует.
Если он еще не существует, я бы хотел использовать модуль Python, CSV и psycopg2 для создания python script, который:
- Прочитайте CSV файл (ы).
- Основываясь на подмножестве записей (10-100 строк?), итеративно проверяйте каждый столбец каждой строки, чтобы автоматически определять правильный тип столбца данных в CSV. Поэтому, если строка 1, столбец A имеет значение 12345 (int), но строка 2 столбца A имеет значение ABC (varchar), система автоматически определяет, что он должен быть форматом varchar (5) на основе комбинации данных, найденных в первых двух проходах. Этот процесс может продолжаться столько раз, сколько пользователь счел необходимым определить вероятный тип и размер столбца.
- Создайте запрос CREATE TABLE, как определено проверкой столбца CSV.
- Выполните запрос create table.
- Загрузите данные в новую таблицу.
Существует ли такой инструмент уже в SQL, PostgreSQL, Python или есть другое приложение, которое я должен использовать для выполнения этого (аналогично pgAdmin3)?