- Сохранить загруженный файл во временную папку на сервере.
- Выполнить T-SQL для чтения загруженного файла непосредственно из файловой системы во временную таблицу SQL через OLEDB.
- Выполнить T-SQL для чтения данных из временной таблицы и обработки по мере необходимости (например, сравнить с существующими данными и обновить/вставить при необходимости).
Код: Выделить всё
Select * into #MY_TEMP_TABLE
From OpenRowSet(
'Microsoft.ACE.OLEDB.12.0',
'Excel 12.0; Database=PATH_TO_MY_UPLOADED_FILE; HDR=YES',
'Select * From MY_WORKSHEET_NAME%')
Мы находимся в процессе подготовки приложения к Azure (веб-сайт Azure и база данных SQL, а не виртуальная машина). Мы можем загрузить файл в хранилище BLOB-объектов и поместить его содержимое в массив байтов, но тогда мы застрянем в подходе к построчной обработке, который является медленным и нестабильным.
Есть ли быстрый способ программной массовой загрузки Excel в SQL в Azure?
Подробнее здесь: https://stackoverflow.com/questions/257 ... -sql-table
Мобильная версия