Я занимаюсь разработкой приложения для win32 windows с Delphi и MS SQL Server. он работает нормально в локальной сети, но я пытаюсь добавить поддержку удаленных соединений SQL Server (= работа с БД, к которой можно получить доступ с помощью внешнего IP-адреса, как описано в этой статье: http://support.microsoft.com/default.aspx?scid=kb;EN-US;914277).
В основном у меня есть таблица в БД, в которой я храню DocumentID, описание документа и путь к документу (например, \\FILESERVER\MyApplicationDocuments\45.zip
).
Конечно, \\FILESERVER
- это локальный (LAN) путь для сервера, но не для клиента (как я сейчас пытаюсь добавить поддержку удаленных подключений).
Поэтому мне нужен способ доступа к \\FILESERVER
, даже если, конечно, я не вижу его в локальной сети.
Я нашел следующий фрагмент кода T-SQL, который идеально подходит для «трюка загрузки»:
ВЫБРАТЬ BulkColumn как MyFile ИЗ OPENROWSET (BULK '\ FILESERVER \ MyApplicationDocuments \ 45.zip', SINGLE_BLOB), как X
С помощью приведенного выше кода я могу загрузить файл на клиенте.
а как его загрузить? Мне нужен «трюк с загрузкой», чтобы иметь возможность вставлять новые файлы, а также удалять или заменять существующие файлы.
Кто-нибудь может подсказать? Если трюк не доступен, не могли бы вы предложить альтернативу? Как расширенная хранимая процедура или вызов некоторой сборки .net с сервера.