MySQL: автоматизация загрузки данных из обычных файлов txt / csv в базу данных - PullRequest
0 голосов
/ 18 октября 2018

Intro

Я искал все вокруг об этой проблеме, но я действительно не нашел источника знаний об этом, поэтому я извиняюсь, если эта проблема кажется основнойдля вас, но для меня это довольно интригующе из-за того, что мне трудно угадать, какие ключевые слова использовать в Google для получения нужной информации.

Описание проблемы:

На самом деле мне приходится сталкиваться с проблемами, которые я не знаю, как обращаться с экземпляром MySQL, установленным на ноутбуке вОкно среды:

  1. У меня есть БД в MySQL с 50 таблицами, из которых с 15 или 20 таблицами являются таблицы с исходными данными.Другие таблицы были таблицами, которые я сгенерировал из исходных таблиц данных, чтобы правильно создавать таблицы, которые позволили бы мне анализировать данные в PowerBI.Исходные таблицы данных снабжаются дампами из базы данных ERP.Моя проблема заключается в следующем:

Как можно автоматизировать процесс получения кумулятивных файлов txt / csv (с помощью флеш-накопителя или любого другого механизма передачи), сохранить эти файлы в папке и затем обновитьсуществующие таблицы с новой информацией?Есть ли какие-либо ссылки на лучшие практики для борьбы с таким сценарием?Как я могу поддерживать хорошую форму своей базы данных с помощью последовательной интеграции данных, я имею в виду, как я могу сделать свою базу данных масштабируемой и адаптивной?Можете ли вы указать мне некоторые источники, которые могли бы помочь мне в этом?

В данный момент я импортировал данные в таблицы, выполнив 2 шага:

1-й - я создал структуру таблицы с помощью мастера импорта Workbenchпомочь (мне пришлось сделать это таким образом, потому что таблицы имеют много полей - десятки из них, буквально, и эти поля должны быть в базе данных).Я также вставил первичные ключи и индексы в эти таблицы;

2nd - мне удалось загрузить данные из файлов в эти таблицы, используя команду LOAD DATA IN FILE.

Некоторые поля таблиц, созданные с помощью мастера импорта, были созданы в виде текста типа данных, в этом случае нет необходимости.Я хотел бы вернуть эти поля к типу данных NVARCHAR (255) или что-то еще. Однако на данный момент существует много полей для изменения типа данных и в нескольких таблицах, и мне было интересно, могу ли я написать запрос для выполненияработа по созданию всех необходимых мне операторов ALTER TABLES.

Итак, моя проблема здесь: безопасно ли изменять тип данных в нескольких полях в нескольких столбцах (в этом случае я хотел быизменить поля с текстом типа данных на NAVARCHAR (255))?Каков наилучший способ сделать это?Подскажите, пожалуйста, какие-нибудь источники или лучшие практики для этого?

Заранее благодарю за помощь.Приветствия

1 Ответ

0 голосов
/ 20 октября 2018

Вам нужен язык сценариев, а не пользовательский интерфейс.См. Инструмент командной строки mysql, оболочка вашей ОС и т. Д. И т. Д.

  1. DROP DATABASE и его создание
  2. LOAD DATA
  3. Массаж данных для получения столбцовчище, чем то, что предоставили данные загрузкишаг 4. Это включает предоставление формата или схемы для шагов 2 и 4.
...