Архив: Импорт из MySQL в Google Таблицы

Бюджет 50$ / 3000
руб
в месяц
Создан: 4 года назад
Закрыт
Описание
Необходимо разработать Google App Script импортирующий данные из MySQL в Google Таблицы.
При отклике называйте сроки и стоимость реализации. Работаю только через БС, поэтому рипперы, с рассказами про сложности верификации и неактивными 5-и летними аккаунтами – идите лесом.

Суть задачи:
Существует условная MySQL база данных, которая содержит таблицы приблизительно следующей структуры. Данная структура указана в качестве примера и для разных таблиц она может отличаться. Необходимо написать скрипт для Google Spreadsheet, который подключался к БД и выгружал/обновлял все значения из таблиц MySQL базы данных.

Структура DB:
id;date;form;ip;ua;uid;login;password;phone;address1;address2;zip;city

Пример структуры Google Таблицы.
https://docs.google.com/spreadsheets/d/1hb8UteTLuKtLxT8IkSaUBsx6H6nhvKWVkahJJbQ7DJk/
На листе sql_example (temp) в ячейке лежит mysql dump.

Нюансы:
1) В Google Таблицах создается Лист, содержащий все интересующие колонки из таблицы в MySQL БД
2) Название листа в Google Таблицах = Название таблицы
3) Так же нужно исключить возможные ошибки в случае, если произойдет перемещение порядка столбцов в Google Таблице. Т.е. нужно обращаться к каждой ячейке не по заранее заданному индексу, а по ассоциированному значению из заголовка. Помимо этого, значения из заголовка(названия колонок) необходимо обработать методом .toLowerCase()
4) Данные в БД могут обновляться, для этого необходимо реализовать отдельную функцию Update. У каждой Таблицы будет колонка date, содержащая актуальное время поступления данных (или обновления их в MySQL). Нужно пробежаться по тем, которые были изменены и обновить значения в ячейках.
5) Настройки для подключения к БД необходимо вывести на отдельный лист Google Таблиц "settings": host;db_name;user;pass
Т.е. фактически весь набор переменных для формирования SQL запроса лежит в ячейках + в Названии Листа
6) На отдельный лист Google Таблиц "logs" необходимо выводить информацию о результатах импорта и выводить ошибки
7) Вызов функций, отвечающих за импорт/обновление данных необходимо вынести в отдельное меню. (https://developers.google.com/apps-script/guides/menus)
8) При каждом новом импорте, старые данные не должны затираться.

Мои мысли относительно логики работы функций:
Логика работы Insert
- Получаем название активного листа
- Собираем все названия из первой строки (Заголовки) + приводим в нижний регистр. Получаем значение последнего ID в колонке. Есть вероятность перемещения строк, поэтому нужно найти самое большое значение среди всех существующих в массиве.
- Получаем значение для подключения с Листа settings
- Формируем запрос
- Получаем ответ
- Логгируем
- Производим поиск необходимых колонок
- Вставляем в цикле данные
- Логгируем

Логика работы Update
- Получаем название активного листа
- Собираем все названия из первой строки (Заголовки) + приводим в нижний регистр.
- Получаем значение для подключения с Листа settings
- Формируем запрос
- Получаем ответ
- Логгируем
- Производим поиск необходимых колонок
- Формируем в цикле по-строчную проверку и сравнение изменений ячейки date для каждого id. Если находим несоответствие + значение date в БД "свежее", чем в Таблице. Вставляем данные в ячейки
- Логгируем
Категория

Похожие проекты

$1200
0 0
Необходимо перевести действующую БД с версии 77 на 8 (переписать конфигурацию, настроить обработки для переноса данных).   Не типовая конфигурация по учету пенсионеров в ГУ РК....
$14
0 0
Без акцента на идею, необходимо создать мобильное приложение iOs и Android, с возможностью трансляции основной информации в миниапп Tg. Интеграция с платежной системой, внутренний кошелек, две валюты. В зависимости от гео, возможность конвертации валют ч/з сервер. На старте, сервер скорее облачный. Двухфакторная......
$714
0 0
Описание задачи: Необходимо разработать serverless функцию на базе NestJS и TypeScript для автоматизированной обработки видеофайлов, загружаемых в Yandex Cloud Storage. Функция должна выполнять конвертацию видео в формат, поддерживаемый основными веб-браузерами, с последующим сжатием до оптимального......
safe$22
9 0
требуется готовую онлайн анкету на django по приему на работу перенести в whatsapp, telegram и viber. Нужно чтобы кандидат мог с удобством заполнять анкету с телефона, а все заполненные им данные по всем позициям автоматически загружались в нашу базу данных. В нашей базе будет создаваться резюме кандидата......
safe 
28 0
В наличии массив кадастровых номеров (КН), необходимо путем запроса на ПКК определить примерные географические координаты каждого объекта из массива КН (ОКС, ЗУ), вывести в результирующий файл эти ко-ты и ряд сопутствующих данных по этому КН....
1 год назад
safe 
44 2
Необходимо разработать бек и фронт мини-сервиса таким образом, чтоб его можно было развернуть внутри другого проекта....
safe$1111
23 0
Стоит на Бизнесе для своих нужд на простеньком базовом шаблоне, складываю туда контент потихоньку. Нужно начинать приводить в соответствие что бы публика сразу не убегала, а как то цеплялась, да и продвигать не торопясь. Шаблон где порвался от вставки баннеров подправить, для мобилок может сверстать.......
safe$22
55 0
Парсер для сайта stockx. com на питоне (selenium/pyppeteer). Необходим следующий функционал: 1. На главной странице с поиском по ключевым словам найти первый результат из поиска (ссылку на страницу товара) ....
1 год назад
safe$44
49 0
Трипланарная транспортная задача (отправители - транспорт - получатели) генерация исходных данных трехэтапное решение 1....
safe$1111
48 0
Требуется написать парсер маркетплейса, у которого есть только мобильное приложение (IOS, Android). Есть исходный код Android приложения (Java + Kotlin), реверснутый через JADX. Необходимо парсить данные о товарах, полученные по артикулу. За подробностями тг: @markermann)....
1 год назад
 
38 0
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
 
36 0
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
 
37 0
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
 
31 0
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
 
40 1
Требуется написать софт , который будет делать рассылку по личным сообщениям на площадке Ebay Kleinanzeigen по заранее спаршенным обьявлениям....
1 год назад
$22
59 1
В Геткурсе нужно сделать интеграцию со Сбербанком для оформления рассрочки/кредита. Основная задача – передача суммы и номера заказа при переходе для оформления рассрочки и возврат сведений при удачном оформлении. Эквайринг от Сбербанка к Геткурсу подключён, а готовой интеграции для рассрочки нет. Если......
1 год назад
 
96 0
Нужно сделать бот перехватчик заказов по фильтру такси Максим!...
1 год назад
$33
75 1
Как можно загрузить готовое фото из галереи, если приложение просит загрузить фото и при этом открывает камеру телефона? Нужно вместо использования реальной камеры смоделировать вход камеры и при этом загрузить фото из галереи....
1 год назад
Смотреть все