【问题标题】:How to import Azure blob file into Sql Server 2008如何将 Azure blob 文件导入 Sql Server 2008
【发布时间】:2019-07-07 05:38:04
【问题描述】:

除了使用 CLR 之外,还有其他方法可以将 Blob 文件导入 sql server 2008 吗?

文件大小约为 300MB,因此 CLR 不够高效。 2008服务器有可能使用BULK INSERTOPENROWSET吗?

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'
); 

那么我们是否有类似上面的东西可以在 Sql Server 2008 中导入 blob 文件?

【问题讨论】:

  • @LeonYue 完成,感谢您的宝贵时间。

标签: sql sql-server azure clr bulk-import


【解决方案1】:

看文档:BULK INSERT (Transact-SQL)

SQL Server 2008 支持BULK INSERT:从 2008 年开始。 所以你可以在 SQL Server 2008 中使用BULK INSERT

但如果您的 data_file 位于 Azure blob 存储中,则您的 SQL Server 版本必须以 SQL Server 2017 (14.x) CTP1.1 开头。与OPENROWSET 相同。

这意味着您无法使用BULK INSERTOPENROWSET 将 Blob 文件导入 SQL Server 2008。

希望这会有所帮助。

【讨论】:

    猜你喜欢
    • 2019-07-18
    • 2011-09-01
    • 2015-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-11
    相关资源
    最近更新 更多