Гость
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как загружать данные в MS SQL Servet из Excel / 21 сообщений из 21, страница 1 из 1
23.12.2021, 05:43
    #40122337
Morskoi_kotik
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
Подскажите, пожалуйста! Каким способом можно регулярно грузить данные в таблицы в базе MS SQL Server из excel кроме SSIS?

Я знаю в Oracle можно грузить данные создавая внешние таблицы. А в MS SQL есть такая возможность?
...
Рейтинг: 0 / 0
23.12.2021, 05:55
    #40122338
aleks222
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
Morskoi_kotik
Подскажите, пожалуйста! Каким способом можно регулярно грузить данные в таблицы в базе MS SQL Server из excel кроме SSIS?

Я знаю в Oracle можно грузить данные создавая внешние таблицы. А в MS SQL есть такая возможность?

А то.
"Linked server" называется.
...
Рейтинг: 0 / 0
23.12.2021, 11:07
    #40122373
komrad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
...
Рейтинг: 0 / 0
23.12.2021, 12:05
    #40122389
L_argo
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
по сабжу: готовые средства имеют массу ограничений.

Регулярный импорт предусматривает в т.ч. преобразование данных, поэтому нужно предусмотреть правильную предобработку: дат, чисел, строк и т.д. А также нужна понятная обработка ошибок. Желательно с указанием ошибочной строки(строк).

А OpenRowset еще и требует видимости файла с сервера, что не всегда возможно.

Поэтому мне пришлось делать утилиту для сабжа.
...
Рейтинг: 0 / 0
23.12.2021, 12:21
    #40122395
aleks222
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
L_argo
по сабжу: готовые средства имеют массу ограничений.

Регулярный импорт предусматривает в т.ч. преобразование данных, поэтому нужно предусмотреть правильную предобработку: дат, чисел, строк и т.д. А также нужна понятная обработка ошибок. Желательно с указанием ошибочной строки(строк).

А OpenRowset еще и требует видимости файла с сервера, что не всегда возможно.

Поэтому мне пришлось делать утилиту для сабжа.


Вы не умеете их готовить.

1. Грузим строками все.
2. Конвертируем на сервере.

ЗЫ. Стремление по каждому поводу писать "утилиты" - это не от великого ума.
...
Рейтинг: 0 / 0
23.12.2021, 13:08
    #40122418
.Евгений
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
aleks222

1. Грузим строками все.
2. Конвертируем на сервере.

Делать все через nvarchar(max)? Почему бы и нет, если производительность совсем не играет роли...
...
Рейтинг: 0 / 0
23.12.2021, 13:17
    #40122421
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
Morskoi_kotik,

а что не так с SSIS?
...
Рейтинг: 0 / 0
23.12.2021, 14:23
    #40122451
aleks222
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
.Евгений
aleks222

1. Грузим строками все.
2. Конвертируем на сервере.

Делать все через nvarchar(max)? Почему бы и нет, если производительность совсем не играет роли...


1. Ну, если у тя в экселе ожидается ячейка с 2Гб - да.
2. С чего ты взял, что работаешь с данными быстрее сервера?
...
Рейтинг: 0 / 0
23.12.2021, 14:33
    #40122455
.Евгений
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
aleks222
1. Ну, если у тя в экселе ожидается ячейка с 2Гб - да.
2. С чего ты взял, что работаешь с данными быстрее сервера?

1. Если я знаю, что ожидается в ячейках, то могу грузить и не строками.
2. Трансформация данных - это не самое быстрое умение SQL Server, об этом уже говорилось ранее.
...
Рейтинг: 0 / 0
23.12.2021, 14:54
    #40122460
aleks222
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
.Евгений
aleks222
1. Ну, если у тя в экселе ожидается ячейка с 2Гб - да.
2. С чего ты взял, что работаешь с данными быстрее сервера?

1. Если я знаю, что ожидается в ячейках, то могу грузить и не строками.
2. Трансформация данных - это не самое быстрое умение SQL Server, об этом уже говорилось ранее.


1. Ты хоть различаешь: "ожидается" и "имеется"?
2. Вряд ли ты трансформируешь быстрее.

ЗЫ. Если тебе поступают идеальные сферические файлы экселя - грузи определенными типами.
Проблема в том, что "идеальные сферические файлы экселя" - это фантастика, сынок.
...
Рейтинг: 0 / 0
23.12.2021, 15:09
    #40122466
.Евгений
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
aleks222

1. Ты хоть различаешь: "ожидается" и "имеется"?
2. Вряд ли ты трансформируешь быстрее.

ЗЫ. Если тебе поступают идеальные сферические файлы экселя - грузи определенными типами.
Проблема в том, что "идеальные сферические файлы экселя" - это фантастика, сынок.

Нужно просто не быть ограниченным возможностями SQL Server-а, когда грузится либо все, либо ничего. Возможно приводить основную массу правильных ячеек стандартными средствами провайдера данных (который сделает это действительно быстрее), отводя редкие ошибки в отдельный поток (чтобы ошибки были действительно редкими - ограничить их количество). По потребностям можно добавить преобразования на лету.
...
Рейтинг: 0 / 0
23.12.2021, 15:13
    #40122468
aleks222
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
.Евгений

Нужно просто не быть ограниченным возможностями SQL Server-а, когда грузится либо все, либо ничего.


Что делает кот, когда коту делать неча?
Да, можно.
...
Рейтинг: 0 / 0
23.12.2021, 15:21
    #40122470
.Евгений
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
aleks222
.Евгений

Нужно просто не быть ограниченным возможностями SQL Server-а, когда грузится либо все, либо ничего.


Что делает кот, когда коту делать неча?
Да, можно.

"Если из всех инструментов у тебя есть только молоток, то в каждой проблеме ты увидишь гвоздь".
Если человек знает только SQL, то все проблемы будет решать только им...
...
Рейтинг: 0 / 0
23.12.2021, 15:26
    #40122473
andy st
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
...
Рейтинг: 0 / 0
23.12.2021, 15:33
    #40122477
andy st
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
.Евгений

Нужно просто не быть ограниченным возможностями SQL Server-а, когда грузится либо все, либо ничего. Возможно приводить основную массу правильных ячеек стандартными средствами провайдера данных (который сделает это действительно быстрее), отводя редкие ошибки в отдельный поток (чтобы ошибки были действительно редкими - ограничить их количество). По потребностям можно добавить преобразования на лету.

Откройте для себя Data Quality Services
...
Рейтинг: 0 / 0
23.12.2021, 15:40
    #40122482
andy st
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
.Евгений
...Если человек знает только SQL, то все проблемы будет решать только им...

Иногда просто для расширения кругозора стоит посмотреть описание компонентов, которые предлагает setup при установке SQL Server.
Ну и хотя бы кратко ознакомиться с функционалом и областями применения.
И потом окажется, что то, что хотелось бы применить в сравнении с комплектным решением как раз и получится "операцией на глазном яблоке через анальное отверстие".
Однако, такие операции в последнее время и в связи с ростом популярности питона и говноподелок на его базе производятся всё чаще и чаще.
...
Рейтинг: 0 / 0
23.12.2021, 16:05
    #40122495
.Евгений
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
andy st
.Евгений

Нужно просто не быть ограниченным возможностями SQL Server-а, когда грузится либо все, либо ничего. Возможно приводить основную массу правильных ячеек стандартными средствами провайдера данных (который сделает это действительно быстрее), отводя редкие ошибки в отдельный поток (чтобы ошибки были действительно редкими - ограничить их количество). По потребностям можно добавить преобразования на лету.

Откройте для себя Data Quality Services

Когда я проходил их на курсах MS, то не был в восторге. Особенно сравнивая с аналогичными продуктами Информатики или САС. Впрочем, это было давно и неправда.
Если в целом, то вы вместо простой загрузки данных предлагаете процесс их очистки, что несколько отличается от изначально заявленной потребности - как по трудозатратам, так и по максимальной производительности.
...
Рейтинг: 0 / 0
23.12.2021, 16:14
    #40122499
andy st
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
.Евгений
Когда я проходил их на курсах MS, то не был в восторге. Особенно сравнивая с аналогичными продуктами Информатики или САС. Впрочем, это было давно и неправда.
Если в целом, то вы вместо простой загрузки данных предлагаете процесс их очистки, что несколько отличается от изначально заявленной потребности - как по трудозатратам, так и по максимальной производительности.

я хз что там заявлено, надо ли чистить, преобразовывать и т.п.
может прокатить вариант
Код: sql
1.
select * FROM OPENDATASOURCE('Microsoft.ACE.OLEDB.12.0','Data Source=some.xls;Excel 12.0;IMEX=1;HDR=YES')...[Лист1$A2:D7]


особенно если одмины умеют в домен, подключение сетевых ресурсов и раздачу прав.
а может нет такого средства, которое бы решало задачи топикстартера и надо несколько лет колбасить с нуля толпой в 100 тел.
...
Рейтинг: 0 / 0
23.12.2021, 16:37
    #40122503
.Евгений
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
andy st,

это уже второй круг этой темы: 22413437
...
Рейтинг: 0 / 0
23.12.2021, 16:52
    #40122506
andy st
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
.Евгений,
тогда может имеет смысл дождаться уточнений, а не фантазировать на абстрактные темы?
...
Рейтинг: 0 / 0
23.12.2021, 16:53
    #40122507
Focha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как загружать данные в MS SQL Servet из Excel
Excel преобразуем в csv и запускаем BULK INSERT
Главное, что бы сервер имел доступ к сетевой папке, где лежат файлы
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как загружать данные в MS SQL Servet из Excel / 21 сообщений из 21, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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