|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
Добрый день, сразу прошу меня понять, в mssql работаю редко, по крайней необходимости. Сейчас как никогда возникла такая необходимость. Собственно в чем сам вопрос. Существует представление, в нем собраны столбцы: Имя Значение, ДатаВремя. Стоит задача выгружать данные из данного представления в файл Excel в автоматическом режиме, без открытия самого файла, т.е. подключение к источникам данных в Excel не подходит ввиду необходимости обновления данных. Но выгрузка должна осуществляться по условию, что ДатаВремя = 8:00 и 20:00 не смотря на дату. Как это правильно реализовать? Буду благодарен за любую помощь. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 19:08 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
выгружайте через BCP https://docs.microsoft.com/en-us/sql/tools/bcp-utility?view=sql-server-ver15 в формате csv ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 19:59 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
Нужно именно в excel ский файл, это возможно? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 20:12 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
А как можно выбрать только те строки в которых время из столбца датавремя 25.05.2020 8:00 Равно 8:00 и 20:00 несмотря на дату? ... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 20:17 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
>Нужно именно в excel ский файл, это возможно? У вас есть два пути: либо pull - с клиента джобом таки открыть Excel файл и макросом выкачать данные либо push - с сервера открыть файл и вкачать данные либо перезаписать файл Выбирайте любой >А как можно выбрать только те строки в которых время из столбца датавремя 25.05.2020 8:00 Равно 8:00 и 20:00 несмотря на дату? с помощью оператора where конечно >несмотря на дату? Код: sql 1.
... |
|||
:
Нравится:
Не нравится:
|
|||
25.05.2020, 21:21 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
SERG1257, Благодарю, а можно поподробнее про метод push? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2020, 06:52 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
>а можно поподробнее про метод push? Для начала надо установить oledb провайдер для Excel. гуглите Microsoft.ACE.OLEDB для вашей версии сервера. После установки его можно будет увидеть в SSMS: сервер->server objects->linked servers->providers Дальше либо создаете SSIS пакет для экспорта (например мастером экспорта), либо создаете linked server используя вышеуказанный провайдер. Совсем не уверен, что вы сможете впихнуть туда что либо кроме чистых данных и заголовков столбцов типа форматирования, фильтров и тп, но вы попробуйте. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2020, 07:48 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
SERG1257, Если Вы про стандартные средства экспорта, то у меня так получается, но каждый раз необходимо запускать экспорт вручную. Возможно каким-то образом сохранить? ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2020, 09:15 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
Ilmurat Нужно именно в excel ский файл, это возможно? выгружаете в csv и запускаете скрипт, который откроет его в excel и сохранит как excel А вообще непонятна задача - кто, когда, где, что. Все должно быть само. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2020, 19:53 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
> Возможно каким-то образом сохранить? Разумеется возможно. Когда делаете экспорт, нажмите на кнопку - сохранить как SSIS package. Его (пакет) можно запускать из агента. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.05.2020, 20:07 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
SERG1257, Сохраняю, но при повторном запуске файла *.dtsx ругается "Сбой выполнения запроса CREATE TABLE со следующей ошибкой, таблица уже существует. Возможная причина сбоя проблема с этим запросом, Свойство "ResultSet", установлено не правильно" Если после каждого экспорта таблицу удалить, и запустить экспорт заново, то проблем не возникает. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2020, 13:26 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
PizzaPizza,Добрый день. Есть таблица которая заполняется значениями, автоматически каждую минуту. Необходимо выгружать в файл строки 2 раза в сутки в 8:00 и 20:00 значения ДатаТайм которых равно 8:00 и 20:00. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2020, 13:30 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
SERG1257, select cast(getdate() As time),cast('08:00:00' as time),cast('20:00:00' as time) Попробовал так, как оказалось дал Вам не верную информацию. Столбец TimeString тип данных char(26), само значение выглядит так 27.05.2020 10:11:14, хотелось бы в представление собрать только те строки в которых значение времени будет 27.05.2020 8:00:14 ну и 27.05.2020 20:00:14 ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2020, 14:09 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
Ilmurat Сохраняю, но при повторном запуске файла *.dtsx ругается "Сбой выполнения запроса CREATE TABLE со следующей ошибкой, таблица уже существует.А вам что надо - то? Чтобы файл перезаписывала? Чтобы дописывала в конец? Открывайте свой пакет Data tools и правьте свойства пакета. И еще раз подумайте на предмет csv (самый первый ответ в топике) Пробовали создать linked server? Тогда вся обработка будет в чистом SQL. Ilmurat Столбец TimeString тип данных char(26), само значение выглядит так 27.05.2020 10:11:14, хотелось бы в представление собрать только те строки в которых значение времени будет 27.05.2020 8:00:14 ну и 27.05.2020 20:00:14 Значит используйте текстовые функции Код: sql 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2020, 17:00 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
Все равно непонятно. Если вам необходимо Ilmurat выгружать в файл строки 2 раза в сутки то пусть сотрудник открывает студию и выгружает два раза в сутки в эксель. Это крайне не сложно, мягко говоря. Опять же Ilmurat ДатаВремя = 8:00 и 20:00 не смотря на дату Вам надо одну строку выгружать каждый раз, утром строку от 8 утра, а вечером от 8 вечера? Вы сформулируйте задачу корректно и сразу станет понятнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.05.2020, 19:47 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
PizzaPizza, Нет, там не 2 строки, там грубо говоря 15 наименований они пишутся в сервер каждую минуту, мне выгружать в сутки 30 строк со значением 8:00 и 20:00 ну и равными этому времени значениями. да, необходимо дописывать файл. По поводу csv пробовал, так и не разобрался((( ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2020, 09:01 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
PizzaPizza, Да, только там будет 15 строк в 8 утра и 15 строк в 8 вечера, нужно, чтоб файл дописывался в фоновом режиме. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2020, 09:07 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
SERG1257, У Вас почта указанная в профиле актуальна? Можно писать туда? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2020, 09:09 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
PizzaPizza, В таблице содержатся следующие значения: value VarName VarValue TimeString 16960575 75 SP-12GVO 28834 27.05.2020 10:11:14 16960575 75 SP-12GVO 28837 27.05.2020 12:50:28 16960575 75 SP-12GVO 28837 27.05.2020 12:51:33 16960575 75 SP-12GVO 28837 27.05.2020 12:52:37 16960575 75 SP-12GVO 28837 27.05.2020 12:53:40 16960575 75 SP-12GVO 28837 27.05.2020 12:54:43 16960575 75 SP-12GVO 28837 27.05.2020 12:55:45 39807731 31 PGP-2 621 27.05.2020 10:11:14 39807731 31 PGP-2 621 27.05.2020 12:50:28 39807731 31 PGP-2 621 27.05.2020 12:51:33 39807731 31 PGP-2 621 27.05.2020 12:52:37 39807731 31 PGP-2 621 27.05.2020 12:53:40 39807731 31 PGP-2 621 27.05.2020 12:54:43 39807731 31 PGP-2 621 27.05.2020 12:55:45 39807705 05 Drobilka 2111 27.05.2020 10:11:14 39807705 05 Drobilka 2111 27.05.2020 12:50:28 39807705 05 Drobilka 2111 27.05.2020 12:51:33 39807705 05 Drobilka 2111 27.05.2020 12:52:37 39807705 05 Drobilka 2111 27.05.2020 12:53:40 39807705 05 Drobilka 2111 27.05.2020 12:54:43 39807705 05 Drobilka 2111 27.05.2020 12:55:45 16961352 52 SP-2GVO 41976 27.05.2020 10:11:14 16961352 52 SP-2GVO 41980 27.05.2020 12:50:28 16961352 52 SP-2GVO 41980 27.05.2020 12:51:33 16961352 52 SP-2GVO 41980 27.05.2020 12:52:37 16961352 52 SP-2GVO 41980 27.05.2020 12:53:40 16961352 52 SP-2GVO 41980 27.05.2020 12:54:43 16961352 52 SP-2GVO 41980 27.05.2020 12:55:45 16961564 64 Melnica 1 36181 27.05.2020 10:11:14 16961564 64 Melnica 1 36181 27.05.2020 12:50:28 16961564 64 Melnica 1 36181 27.05.2020 12:51:33 и.т.д. В представление нужно собрать только те, время которых равно 8:00 и 20:00 и выгружать данные из этого представления в файл, не открывая сам файл. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2020, 09:25 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
Ilmurat У Вас почта указанная в профиле актуальна? Можно писать туда? Можно, но не нужно. Я предложил вам решение для фильтрации Код: sql 1.
Оно вам подходит? Если не подходит то почему. Или вы его проигнорировали. Ilmurat да, необходимо дописывать файл.Дописывание обломается, если этот файл открыт клиентом. Вам придется обрабатывать эту ошибку и оповещать клиента. Пробовали сделать связаный сервер (linked server)? Разобрались как в мастере экспорта дописать в существующую таблицу (а не перезаписывать ее)? Далее: никто не сможет записать в файл не открывая файла. Формулируйте яснее. Я так понял, что вы не хотите чтобы конечный пользователь что-либо делал. А если это джоб (не SQL Agent job) на клиенте. Ilmurat По поводу csv пробовал, так и не разобрался((( Что именно вызвало затруднения? Это тупо текстовый файл с полями, разделенными запятыми и строкой заголовка с именами полей. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.05.2020, 17:22 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
SERG1257, С csv, не совсем понятно, как его потом переписать в excel? linked server не попробовал, почитаю про него. В мастере экспорта не нашёл как дописывать файл(( ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 10:45 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
SERG1257, Благодарю)) представление с выборкой по времени сделал)) Осталось разобраться как дописывать экспортный файл. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 13:48 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
Ilmurat В мастере экспорта не нашёл как дописывать файл(( В окне Select Source Tables and Views https://docs.microsoft.com/en-us/sql/integration-services/import-export-data/select-source-tables-and-views-sql-server-import-and-export-wizard?redirectedfrom=MSDN&view=sql-server-ver15 Нажать на Edit Mapping https://docs.microsoft.com/en-us/sql/integration-services/import-export-data/column-mappings-sql-server-import-and-export-wizard?view=sql-server-ver15 ... |
|||
:
Нравится:
Не нравится:
|
|||
30.05.2020, 18:16 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
SERG1257, Благодарю, буду пробовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 11:54 |
|
Выгрузка данных в файл без открытия файла, Выгрузка данных в файл по условию
|
|||
---|---|---|---|
#18+
Ilmurat Нужно именно в excel ский файл, это возможно? теоретически да - там zip-архив, а внутри XML, т.е. тактика такая - делаем в sqlcmd запрос с ответом в XML нужного формата, результаты жмем чем-нибудь типа консольного 7zip и все это объединяем каким-нибудь скриптом (cmd или PowerShell). Мне приходилось однажды такое делать, только не скриптом, а внутри приложения, т.ч. вариант проверенный, но бесплатно я снова делать это не стану - слишком много нудной мороки, т.ч. даю только направление для копания :)) ... |
|||
:
Нравится:
Не нравится:
|
|||
31.05.2020, 12:53 |
|
|
start [/forum/topic.php?fid=46&msg=39961875&tid=1686047]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
94ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
63ms |
get tp. blocked users: |
1ms |
others: | 297ms |
total: | 495ms |
0 / 0 |