Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Импорт данных из Excel в MySQL очень просто / 12 сообщений из 12, страница 1 из 1
02.03.2018, 11:34
    #39609575
VasiliyK72
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из Excel в MySQL очень просто
Здравствуйте!

Я делаю игру онлайн и когда стала задача поменять экономику игры, а это значит сменить настройки цен на все объекты.
Чтобы не делать это все вручную и сменить в базе данных MySql только нужный мне столбик, я просто в экселе сделал табличку.
Исходные данные, это уровень постройки (колонка А) и цена за постройку (Колонка В) были в Экселе.
В данном примере Постройка называется Река и Пруд, а в базе данных id=1. Баланс рассчитал в экселе Excel:

Река и пруд 1
Уровень Цена
1 400
2 800
3 1600
4 3200
5 6400
6 12800

Поэтому преобразовал табличку так:

UPDATE ga_bc_ur SET cost_h=" 400 " WHERE id_bc="1" AND ur=" 1 ";
UPDATE ga_bc_ur SET cost_h=" 800 " WHERE id_bc="1" AND ur=" 2 ";
UPDATE ga_bc_ur SET cost_h=" 1600 " WHERE id_bc="1" AND ur=" 3 ";
UPDATE ga_bc_ur SET cost_h=" 3200 " WHERE id_bc="1" AND ur=" 4 ";
UPDATE ga_bc_ur SET cost_h=" 6400 " WHERE id_bc="1" AND ur=" 5 ";
UPDATE ga_bc_ur SET cost_h=" 12800 " WHERE id_bc="1" AND ur=" 6 ";

Т.е. колонка А:
UPDATE ga_bc_ur SET cost_h="

Колонка В значения Взято из первой таблицы колонка В:
400

Колонка С
" WHERE id_bc="1" AND ur="

Колонка D. Это номер уровня Постройки взято из первой таблички колонка А:
1

Колонка E
";

Потом тупо скопировал, что получилось и вставил в phpMyAdmin, вкладка: Выполнить SQL-запрос(ы) к таблице akvaferma

Все обновилось

С уважением,
Василий Краснобородько
...
Рейтинг: 0 / 0
02.03.2018, 11:41
    #39609579
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из Excel в MySQL очень просто
Мда-с...
...
Рейтинг: 0 / 0
02.03.2018, 15:03
    #39609688
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из Excel в MySQL очень просто
VasiliyK72,

Вы освоили конкатенации строк в Excel, поздравляю!
Но причем тут форум?
...
Рейтинг: 0 / 0
02.03.2018, 15:17
    #39609702
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из Excel в MySQL очень просто
miksoft,

Это была не конкатенация в общепринятом смысле
...
Рейтинг: 0 / 0
02.03.2018, 18:39
    #39609797
VasiliyK72
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из Excel в MySQL очень просто
Не судите строго, рыбовода.

С уважением,
Василий
...
Рейтинг: 0 / 0
02.03.2018, 19:53
    #39609827
Yagrus2
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из Excel в MySQL очень просто
VasiliyK72,
Лучше расскажите про игру
...
Рейтинг: 0 / 0
02.03.2018, 20:42
    #39609842
miksoft
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из Excel в MySQL очень просто
vklemiksoft,

Это была не конкатенация в общепринятом смысле а в каком?
Обычно для сборки запросов в Excel используется оператор конкатенации &.
Можно, конечно, и как-то сложнее сделать, но зачем?
...
Рейтинг: 0 / 0
02.03.2018, 21:18
    #39609848
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из Excel в MySQL очень просто
miksoftа в каком?
Обычно для сборки запросов в Excel используется оператор конкатенации &.Да, обычно так.
А здесь не так, здесь брутально, пять столбцов с копипастом (?) исходных значений вместо одного дополнительного столбца с формулой:
VasiliyK72колонка А:
UPDATE ga_bc_ur SET cost_h="

Колонка В значения Взято из первой таблицы колонка В:
400

Колонка С
" WHERE id_bc="1" AND ur="

Колонка D. Это номер уровня Постройки взято из первой таблички колонка А:
1

Колонка E
";Получается некий текст в ячейках листа. Далее выделяются оные пять столбцов из шести строк и копипастятся из екселя куда-то, где отдельные ячейки "волшебным образом" объединяются в цельный текст. Вот такая вот конкатенация.
miksoftМожно, конечно, и как-то сложнее сделать, но зачем?Топикстартеру так оказалось проще сделать. По крайней мере, для такого способа можно вообще ничего не знать о существовании и использовании = и &.
...
Рейтинг: 0 / 0
02.03.2018, 22:17
    #39609859
VasiliyK72
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из Excel в MySQL очень просто
При помощи такого способа я поменял настройки экономические, а это около 50 шт за 5-6 минут.
Быстрее способа я не знаю. Если Вы знаете, то предложите, будет интересно узнать.
...
Рейтинг: 0 / 0
02.03.2018, 22:27
    #39609860
VasiliyK72
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из Excel в MySQL очень просто
Yagrus2VasiliyK72,
Лучше расскажите про игру

Я проектирую и строю автоматические рыбные фермы в разных странах.
Например в городе Таллин, в центре города на чердаке 150 м2 построил осетровник, производительностью 5 тонн осетра в год.
Контролер руководит всеми процессами выращивания рыб, кормит рыб и завтра кормит чуть больше с учетом роста рыб. Если, что-то идет не так, то зовет на помощь человека.

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

На MySQL реализована база данных, поэтому разбираюсь с программированием. Кстати, этот форум мне помог в нескольких вопросах.

А так сама игра моя по адресу: зацензурено модератором

С уважением,
Василий Краснобородько
...
Рейтинг: 0 / 0
02.03.2018, 22:42
    #39609862
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из Excel в MySQL очень просто
VasiliyK72, да нормальный способ для одноразовых работ.
Хотя, если ексель тут лишь роль шпаргалки выполнял (не вычислял оптимальные значения по сложным алгоритмам и т.п.), а все изменения делаются через phpMyAdmin, так значения можно легко править непосредственно в ячейках таблицы прямо в phpMyAdmin. Дабл-клик на ячейке, напечатать цифры, жмакнуть Enter. Ексель тогда как-бы и совсем не нужен.
Быстрее оно будет или медленнее - не скажу.

Для периодического изменения значений есть смысл сделать специальную административную страничку с удобным интерфейсом для управления настройками.
Если вручную натыкивать все цифорки, то не помешает контроль значений Например, каждое следующее должно быть не меньше предыдущего + какая-то заданная величина или коэффициент.
Судя по представленному ряду, каждое следующее значение вдвое больше предыдущего. Для такого алгоритма назначения цен достаточно ввести всего два параметра - цена первого уровня и коэффициент, а остальное нехай программа делает. Вот это уж точно быстрее будет. Хотя, конечно, придется потратить время на реализацию.
...
Рейтинг: 0 / 0
03.03.2018, 12:32
    #39609967
VasiliyK72
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Импорт данных из Excel в MySQL очень просто
vkleтак значения можно легко править непосредственно в ячейках таблицы прямо в phpMyAdmin. Дабл-клик на ячейке, напечатать цифры, жмакнуть Enter. .

Спасибо за совет. Попробовал двойной клик на ячейки. Я не знал, что так тоже можно править.
А в экселе остальные числа у меня уже не по геометрической прогрессии идут.
В экселе подбирал значения, чтобы к определенному уровню заданное количество денег потратить.

С уважением,
Василий
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Импорт данных из Excel в MySQL очень просто / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]