|
|
|
лист Excel
|
|||
|---|---|---|---|
|
#18+
Дано: книга Excel, где пользователь набил неизвестно как данные. Заготовки книг формирую не я, поддержка макросов запрещена. Задача - перегнать данные в БД MySQL, клиентская программа, которая впоследствии занимается аналитикой данных написана на Java:Swing Подскажите пожалуйста уважаемые профессионалы, может кто сталкивался с такой задачей, какими инструментами лучше реализовать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2017, 05:21 |
|
||
|
лист Excel
|
|||
|---|---|---|---|
|
#18+
Mari.P, 1. Сохранить в Экселе как CSV файл. 2. Импортировать в базу штатными средствами. См. LOAD DATA INFILE Syntax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 10.02.2017, 14:45 |
|
||
|
лист Excel
|
|||
|---|---|---|---|
|
#18+
Garrick, Спасибо, попробовала сохранить в csv, получилась ерунда. Да и пользователи не будут сами сохранять в .csv Думаю написать программу чтения непосредственно Excel файла, используя Apache POI, поиска по адресу необходимых значений и записи их в базу. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2017, 07:15 |
|
||
|
лист Excel
|
|||
|---|---|---|---|
|
#18+
Mari.P, самое быстрое средствами poi прочитать и сохранить в csv, а потом load data... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2017, 07:35 |
|
||
|
лист Excel
|
|||
|---|---|---|---|
|
#18+
вадя, Спасибо. Прочитала файл c помощью POI Зачем сохранять в csv? сейчас разгребу и буду в базу писать. Минус только один - придется привязываться не по uid, а по адресам, а это не очень надежно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2017, 09:30 |
|
||
|
лист Excel
|
|||
|---|---|---|---|
|
#18+
Mari.Pвадя, Зачем сохранять в csv? Штатная загрузка CSV будет работать в разы быстрее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2017, 21:58 |
|
||
|
лист Excel
|
|||
|---|---|---|---|
|
#18+
GarrickШтатная загрузка CSV будет работать в разы быстрее. Если руки кривые. Впрочем, раз пользователь вводит данные вручную, то скорость загрузки в базу не имеет значения, так как данных мало. Так что делать, как удобно. Я бы сделал так (фактически, иногда и делаю): Mary.Pсейчас разгребу и буду в базу писать. CSV плох тем, что не сохраняет информации о типах, из-за чего есть возможность ошибок или неточной передачи данных. Что конечно можно учесть, но можно и не допускать, не применяя CSV без нужды. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2017, 02:50 |
|
||
|
лист Excel
|
|||
|---|---|---|---|
|
#18+
Partisan MВпрочем, раз пользователь вводит данные вручную, то скорость загрузки в базу не имеет значения, так как данных мало Про мало данных нигде не сказано, это вы сами придумали. Может быть там в каждом файле по максимуму строк и таких файлов сотни тысяч, а на загрузку всего этого отведено не более часа. Подобных исходных данных автор темы не представил. Partisan MCSV плох тем, что не сохраняет информации о типах, из-за чего есть возможность ошибок или неточной передачи данных. Что конечно можно учесть, но можно и не допускать, не применяя CSV без нужды. Вы серьёзно счтитаете что Excel больше предоставляет информации о типах? Особенно когда в текстовых ячейках написано что-то типа: "01.01.2001" или "1, 500.00 р." Загрузка данных из CSV есть штатно во всех СУБД. По моему мнению, чем стараться переплюнуть разработчиков СУБД в этой области, лучше потратить это время на написание программы/процедуры по приведению исходных данных к единому формату, удобному для загрузки в базу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2017, 17:47 |
|
||
|
лист Excel
|
|||
|---|---|---|---|
|
#18+
Спасибо всем. Данных действительно мало, тк шаблон Excel спускают сверху, а юзер вводит данные вручную ежедневно и на каждый день у него новый файл. Просто руководство захотело аналитику, те графики, отчеты и тп, а как их сделать, если файлы Excel раскиданы по всему компьютеру. Вот поэтому и требуется загрузка в БД. Юзер нажимает кнопку "загрузить файл", а прога анализирует и пишет в БД. Ну а потом выводит по запросу разную аналитику за период и так каждый день ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2017, 08:40 |
|
||
|
|

start [/forum/topic.php?fid=59&tid=2123158]: |
0ms |
get settings: |
8ms |
get forum list: |
16ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
64ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 226ms |
| total: | 377ms |

| 0 / 0 |
