Как хранить ZIP на сервере SQL 2005 только с SQL? - PullRequest
1 голос
/ 03 января 2012

Я использую SQL Server 2005 и могу использовать только Management Studio (это промежуточный / производственный сервер).Мне нужно сохранить ZIP-файл с локального компьютера (сервера) в поле BLOB-объекта.

Я делаю это:

create table CFile (id int, thefile varbinary(max))

INSERT INTO CFile
    (id, thefile)
    SELECT 1, 
        BulkColumn FROM OPENROWSET(
            Bulk 'C:\test.zip', SINGLE_BLOB) AS BLOB

и все было в порядке, но тогда, когда:

SELECT * FROM CFile

Я видел строку, но не вижу данных в поле файла, и она не пуста (проверено также с помощью функции ISNULL)

То есть есть данные, но я не могу их прочитать?Зачем?Как я снова получаю его из Management Studio, по крайней мере, как varchar?

Я пытаюсь с

INSERT INTO CFile (id, thefile) VALUES (3,cast('asasdfadsfadsfdsafadsfasdfadsfasdfd' as varbinary))

, и он работает, я вижу содержимое поля.

Любая помощь или совет в этом будет срочно.

Спасибо

1 Ответ

2 голосов
/ 03 января 2012

Я почти уверен, что средство просмотра управления SQL не имеет средства просмотра BLOB. Вам придется сохранить его обратно в файл.

Вы можете проверить с помощью DATALENGTH (файл), чтобы проверить, было ли загружено поле.

...