Как импортировать файл BLOB-объектов Azure в Sql Server 2008 - PullRequest
0 голосов
/ 13 февраля 2019

Есть ли способ импортировать файлы Blob в sql server 2008, кроме использования CLR?

Размер файла составляет около 300 МБ, поэтому CLR недостаточно эффективен.Есть ли возможность использовать BULK INSERT или OPENROWSET на сервере 2008?

Например, в Sql Server 2017 мы можем сделать это

CREATE DATABASE SCOPED CREDENTIAL AzureDevBlobImportCred
WITH IDENTITY = 'SHARED ACCESS SIGNATURE',
SECRET = 'st=2018-12-05T.....'

go

CREATE EXTERNAL DATA SOURCE AzureDevBlobImportExternalSrc
WITH  (
    TYPE = BLOB_STORAGE,
    LOCATION = 'https://myStorageAccount.blob.core.windows.net', -- storage account URL
    CREDENTIAL = AzureDevBlobImportCred -- External Data Source
);

, тогда мы можем использовать внешний источник данных при массовом импорте

BULK INSERT #Mytemptable 
FROM 'filename'
WITH (DATA_SOURCE = 'AzureDevBlobImportExternalSrc'
); 

Так что у нас есть что-то вродевыше для импорта BLOB-файлов в Sql Server 2008?

1 Ответ

0 голосов
/ 14 февраля 2019

Посмотрите на документ: BULK INSERT (Transact-SQL) .

SQL Server 2008 поддерживает BULK INSERT: начиная с 2008 года. enter image description here Итаквы можете использовать BULK INSERT в SQL Server 2008.

Но если ваш data_file находится в хранилище BLOB-объектов Azure, ваша версия SQL Server должна начинаться с SQL Server 2017 (14.x) CTP1.1.То же самое с OPENROWSET.enter image description here

Это означает, что вы не можете импортировать файлы Blob в SQL Server 2008 с BULK INSERT или OPENROWSET.

Надеюсь, это поможет.

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