Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
talja
Member

Откуда: Krasnoyarsk
Сообщений: 54
Добрый день!
Есть проблема: нужно данные отдной из таблиц базы sql-сервера(2005) выгрузить в excel. Вариант select, затем copy-paste отпадает, аариант с мастером экспорта-импорта тоже, так как пользователи не работают с SQL SERVER Management Studio.Процедура должна проводиться пользователем- щелчком кнопки на форме. Нашла вариант экспортнуть данные в excel, но данные экспортируются в папку на сервере, соответственно пользователь их не увидит. Как выгрузить данные на диск C:\ пользователя?
Спасибо.
9 апр 13, 09:39    [14154782]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
Glory
Member

Откуда:
Сообщений: 104751
В самом Excel уже есть возможность соединится с sql server-ом и выбрать нужные данные.
9 апр 13, 09:41    [14154793]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
talja
Member

Откуда: Krasnoyarsk
Сообщений: 54
Да, спасибо, но пользователей этот вариант, скорее всего, не устроит. У них уже есть формочка, к которой работают не первый месяц. И на эту формочку хотят всего лишь добавить кнопку-расширить функционал.
9 апр 13, 09:46    [14154805]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
Glory
Member

Откуда:
Сообщений: 104751
talja
И на эту формочку хотят всего лишь добавить кнопку-расширить функционал.

А причем тут экспорт данных тогда ?
9 апр 13, 09:48    [14154810]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
talja
Member

Откуда: Krasnoyarsk
Сообщений: 54
Экспорт данных производится по кнопке. Нажали кнопку- получили табличку
9 апр 13, 09:52    [14154830]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
Glory
Member

Откуда:
Сообщений: 104751
talja
Экспорт данных производится по кнопке. Нажали кнопку- получили табличку

Т.е. у вас уже есть коннект к серверу ?
Если да, то что мешает "формочке-кнопке" выгрузить результаты из этого коннекта в локальный файл ??
9 апр 13, 09:54    [14154850]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
Dima T
Member

Откуда:
Сообщений: 16076
talja
Экспорт данных производится по кнопке. Нажали кнопку- получили табличку

Надо в событие Click() кнопки написать чтоб прога послала запрос серверу и сохранила результат. На чем прога написана?
9 апр 13, 10:00    [14154881]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
Scherbakov
Member

Откуда: Нижний Новгород
Сообщений: 82
talja
Экспорт данных производится по кнопке. Нажали кнопку- получили табличку

эт вам тогда на VBA-форум
9 апр 13, 10:01    [14154884]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
talja
Member

Откуда: Krasnoyarsk
Сообщений: 54
Описываю ситуацию более подробно:
Есть приложение: WinForms+SQLServer. База приложения содержит данные о пользователях и их заявках на выполнение определенных работ. Доработка приложения состоит в том, чтобы данные из нескольких таблиц агрегировать и вывести в excel. Для пользователя этот процесс сводится к нажатию кнопки, которая производит выгрузку данных на их ЛОКАЛЬНЫЙ компьютер.
Решение:
1. Создаем на сервере view, содержащую агрегированные данные
2. Создаем DTS- пакет, производящий выгрузку данных из view
3. Создаем процедуру, которая запускает DTS-пакет

Проблема: при выполнении процедуры данные выгружаются не на комп пользователя, а на сервер.

Если есть более простые варианты решения, буду благодарна за совет
9 апр 13, 10:04    [14154903]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
Гость333
Member

Откуда:
Сообщений: 3683
talja
Если есть более простые варианты решения, буду благодарна за совет

См. 14154881
9 апр 13, 10:11    [14154939]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
Dima T
Member

Откуда:
Сообщений: 16076
talja
Есть приложение ...

Вот приложение и должно решать эту задачу. Вопрос надо задавать в форуме по ЯП на котором написано приложение.
Задача SQL сервера хранить данные и выдавать по их приложениям. Остальное задачи приложений.
9 апр 13, 10:13    [14154943]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
Glory
Member

Откуда:
Сообщений: 104751
talja
Решение:
1. Создаем на сервере view, содержащую агрегированные данные
2. Создаем DTS- пакет, производящий выгрузку данных из view
3. Создаем процедуру, которая запускает DTS-пакет

Проблема: при выполнении процедуры данные выгружаются не на комп пользователя, а на сервер.

Если запускать DTS пакет на машине пользователя то и файл будет на локальном диске
9 апр 13, 10:14    [14154945]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
angel_zar
Member

Откуда: Барнаул
Сообщений: 902
Может вам посмотреть в сторону систем отчетов, что они далее с этим экселем делают???
Печатают и все???
9 апр 13, 10:39    [14155109]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
talja
Member

Откуда: Krasnoyarsk
Сообщений: 54
Dima T
talja
Есть приложение ...

Вот приложение и должно решать эту задачу.


Не хотела нагружать приложение, вот и решила действовать напрямую

Dima T
talja
Есть приложение ...

Задача SQL сервера хранить данные и выдавать по их приложениям. Остальное задачи приложений.


А зачем тогда bcp, например?

[quot Glory]
talja
Если запускать DTS пакет на машине пользователя то и файл будет на локальном диске


Если запускать пакет, то-да.
Но пользователи пакеты не запускают. Я хотела, чтобы кнопочка приложения запускала процедуру, которая выполняет пакет. А если выполнить EXEC master..xp_cmdshell 'dtexec .....',
то файлик сформируется на сервере
9 апр 13, 10:53    [14155212]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
Glory
Member

Откуда:
Сообщений: 104751
talja
Если запускать пакет, то-да.
Но пользователи пакеты не запускают. Я хотела, чтобы кнопочка приложения запускала процедуру, которая выполняет пакет

И что вам мешает то сделать, чтобы "кнопочка приложения" запускала пакет ?
9 апр 13, 10:55    [14155220]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
talja
Member

Откуда: Krasnoyarsk
Сообщений: 54
Glory
talja
Если запускать пакет, то-да.
Но пользователи пакеты не запускают. Я хотела, чтобы кнопочка приложения запускала процедуру, которая выполняет пакет

И что вам мешает то сделать, чтобы "кнопочка приложения" запускала пакет ?



Ну в общем-то....надо пробовать
9 апр 13, 11:00    [14155260]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
Scherbakov
Member

Откуда: Нижний Новгород
Сообщений: 82
talja,

на событие нажатия боттона повесь вызов скрипта (я обычно на javscript пишу), а в скрипте хоть ДТС пакеты вызывай, хоть через stream данные в эксель пихай. да хоть не в эксель.
9 апр 13, 11:14    [14155361]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
Dima T
Member

Откуда:
Сообщений: 16076
talja
А зачем тогда bcp, например?

Для админов.
9 апр 13, 11:15    [14155371]     Ответить | Цитировать Сообщить модератору
 Re: Экспорт данных из таблицы sql-сервера на компьютер пользователя  [new]
talja
Member

Откуда: Krasnoyarsk
Сообщений: 54
Glory, спасибо за совет- пакет ведь можно запускать и из Visual Studio.
Правда, на деле решила вопрос так: закачала данные в Excel через RecordSet с помощью ADODB Connection

Всем спасибо за участие!
12 апр 13, 07:43    [14170673]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить