#sql-server #vba #ms-access-2010 #attachment #filestream
#sql-сервер #vba #ms-access-2010 #вложение #filestream
Вопрос:
спасибо за ваше время!
Проблема:
Я хочу сохранить данные filestream из моей серверной части во временную таблицу в моем интерфейсе.
Контекст:
- Интерфейс — Microsoft Access 2010
- Серверная часть — SQL Server 2008 R2 Express (FILESTREAM включен до уровня 3)
Я только что перенес серверную часть Access 2010 на SQL Server 2008 с поддержкой filestream, никаких проблем. В рамках этой миграции я преобразовал столбцы Access 2010 «вложения» в столбцы с поддержкой filestream varbinary(max)
.
Экземпляр SQL Server правильно настроен для filestream, т.Е. Я могу получить доступ к файлам, сохраненным с помощью filestream, через t-sql в SSMS.
Я знаю, как установить соединение с экземпляром SQL Server из Access 2010.
Я не знаю, как получить доступ к данным filestream (имя файла, тип файла и данные файла) из Access 2010.
Когда я получу доступ к данным filestream, я планирую преобразовать их обратно в многозначное поле «вложение» во временной таблице во внешнем интерфейсе Access 2010, поскольку затем я смогу продолжать использовать встроенные функции вложения Access 2010.
Производительность не вызывает большого беспокойства, поскольку этот интерфейс Access 2010 используется только <15 пользователями и вскоре будет заменен веб-приложением RoR.
Псевдокод того, что я хочу сделать:
Set adoCMD = New ADODB.Command
Set adoCon = New ADODB.Connection
adoCon.Open "Driver={SQL Server};Server=[ServerNameOmitted];Database=[DatabaseNameOmitted];Trusted_Connection=True;"
Set adoCMD.ActiveConnection = adoCon
Set adoRS = New ADODB.Recordset
adors.open "BLAH BLAH BLAH"
--'Need a query here which allows me to access all the filestream data for a file
--'Once accessed and set to an ADORS.Recordset, I can loop though and convert back to Access 'attachment' format
Пожалуйста, помогите!
Спасибо, Патрик