Как элегантно импортировать файл Excel в Sql Server через HTML-форму Coldfusion? - PullRequest
1 голос
/ 28 ноября 2011

У кого-нибудь есть элегантное предложение о том, как получить содержимое электронной таблицы Excel в SQL Server через веб-форму? Мне нужно разрешить нашим клиентам загружать скромные объемы структурированных данных, и мне нужно, чтобы эти данные в конечном итоге находились в таблице SQL. Я действительно не могу ожидать, что клиентка выдаст что-то кроме файла Excel, но я мог бы потребовать, чтобы это был xlsx.

Веб-приложение написано на Coldfusion; ему не нужно иметь возможность обрабатывать огромное количество одновременных запросов, но я не хочу рассматривать какую-либо обработку пакетных заданий на стороне сервера или шунтировать пользователя на страницу asp.net (что мы и делаем в настоящее время).

Буду признателен за любые рекомендации (или примеры того, как другие успешно это делают). Из-за чувствительности данных мы действительно ничего не можем сделать, чтобы поставить под угрозу безопасность веб-серверов или серверов sql.

Ответы [ 2 ]

12 голосов
/ 28 ноября 2011

Если вы используете CF9, то вы также можете легко использовать тег cfspreadsheet. Я упоминаю об этом именно потому, что ссылка Шона не была сделана (предположительно, из-за того, что она была относительно новой на сцене CF). Вот ссылка liveoc: http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSc3ff6d0ea77859461172e0811cbec17cba-7f87.html

Для полноценного использования я бы создал веб-форму со стандартным полем загрузки файла. На бэкэнде, обрабатывающем отправку формы, получите копию файла с

<cffile action="upload" destination="uploaded.xls".....>

Тогда используйте:

<cfspreadsheet action="read" query="myExcelData" src="uploaded.xls" ...>

В этот момент содержимое вашей электронной таблицы будет доступно как объект запроса. Затем вы можете зацикливаться на этом запросе, каждый раз выполняя запросы вставки на ваш sql-сервер. Это должно сделать это.

0 голосов
/ 28 ноября 2011

Вот наиболее заметные варианты, которые помогут указать вам правильное направление; выберите то, что вам наиболее удобно (Источник: Чарли Арехарт ).

Моя личная рекомендация - пойти по маршруту CFX_Excel . Хотя это коммерческий продукт, он предоставит вам наибольшую функциональность / гибкость из перечисленных вариантов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...