Экспорт данных SQL Server в Excel в веб-приложении
Я хотел бы экспортировать данные из SQL Server pull (обычно я использую SqlDataReader
, но открыт для предложений) в файл Excel / CSV, и пользователь веб-приложения получает его как загрузку.
Я бы хотел сделать этот стиль AJAX, так что щелчок по загрузке не приведет к перезагрузке / обратной передаче.
Кто-нибудь делал это раньше или имел представление о том, как?
- Excel / VBA / SQL - обновление не работает
- Преобразование текста SQL Server с французского на арабский
- Как написать таблицу SQL с помощью excel VBA
- Пакетный файл, который запускает скрипт sql, получает ошибку. Специальный доступ к поставщику OLE DB «Microsoft.ACE.OLEDB.12.0» был отклонен ».
- Мне нужно экспортировать результаты sql-сервера в новую рабочую книгу Excel?
- Данные SQL Server 2008 в Excel с VB6
- Преобразовать дату varchar - как я могу сделать его фактическим входом DATE, а не Char?
- C # Импортировать данные из указанного листа Excel в SQL Server
- Обработка новых строковых символов в CSV с использованием python
- SSIS Excel в CSV - 64 бит True
- Ошибка SSIS: «Недопустимое значение символа для спецификации литья»
- Могу ли я создавать файлы XLSX через SSIS Выполнять SQL-задачу с отключением «Всегда создавать резервные копии»?
- Именованные переменные в SQL с использованием ADODB в vba
Я думаю, что этот механизм будет работать.
У вас есть кнопка HTML, которая вызывает функцию javascript при нажатии.
<input id="downloadbtn" type="button" value="Download" onclick="download();" />
Функция будет выглядеть примерно так:
var download = function() { $.ajax({ url: "datamaker.aspx", context: document.body }).done(function(data) { // parse response data, get file path var filepath = ParseDataToGetFilePath(data); // open the csv file path in a new window (which will begin download) window.open(filepath, '_blank'); }); };
На серверном сервере «datamaker.aspx» должен подключиться к SQL Server и создать файл CSV. Создание CSV-файла так же просто, как создание любого другого файла с помощью streamwriter и запись «запятой» между полями. В конце этой страницы выведите имя файла либо в ответ xml, либо json.
{ filepath: \path\datafile.csv }