Импортируйте открытый файл Excel в сервер SQL - PullRequest
2 голосов
/ 31 августа 2009

Я столкнулся с проблемой, хотя я импортирую файл Excel в SQL Server 2005 с помощью OpenRowSet, он прекрасно работает, когда файл Excel закрыт, Если файл Excel открыт, он выдает сообщение об ошибке. У меня есть файл Excel, который обновляется 8-10 раз в минуту сторонним программным обеспечением, и мне нужно импортировать этот файл Excel в SQL Server 2005 за 10 секунд.

Любая помощь будет чрезвычайно ценится ......... Спасибо, йог

Ответы [ 3 ]

0 голосов
/ 31 августа 2009

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

Как разрешается конфликт, если часть файла одновременно записывается и читается?

Тем не менее, я столкнулся с ситуацией на одном из компьютеров, которые я использую (не Excel, не Windows, даже не ПК, так что это вряд ли актуально), где я мог бы загружать открытые файлы по FTP.

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

Эта идея копирования файла и работы с копией соответствует тому, что сказал pjp. Если вам это сойдет с рук ... Йог, кажется, вызывает такую ​​частоту доступа, которая вызывает конфликт между чтением и письмом.

0 голосов
/ 31 августа 2009

Плохо ли, если вы просто остановите импорт, когда получите сообщение об ошибке, и подождите 10 секунд до следующего импорта?

0 голосов
/ 31 августа 2009

Как узнать, какие строки вы хотите импортировать, если файл постоянно обновляется? У вас есть какой-нибудь порядковый номер, чтобы вы могли обнаружить пробелы?

Если вы действительно хотите работать с тем, что вы предложили, то почему бы не настроить процесс периодического копирования файла электронной таблицы Excel и затем получить код OPENROWSET для чтения из этой копии.

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