[英]Run Stored procedure in Azure SQL database from Excel and download results
[英]Reading excel sheet data from SQL query in stored procedure in Azure SQL
我正在嘗試從 SQL 查詢中讀取 excel 文件中的數據並將其插入臨時表中,但無法從 Excel 文件中讀取數據。 低於錯誤:
嘗試以下解決方案:
SELECT * FROM OPENROWSET(
'Microsoft.ACE.OLEDB.12.0',
'Excel 8.0;HDR=NO;Database=T:\temp\Test.xlsx',
'select * from [sheet1$]')
SELECT * FROM OPENDATASOURCE('Microsoft.ACE.OLEDB.12.0', 'Data Source=C:\Users\Downloads\Excel Logic File.xlsx;Extended Properties=EXCEL 12.0')..[Sheet1$];
在運行查詢之前還嘗試在下面執行:
EXEC sp_configure 'show advanced options', 1
RECONFIGURE
GO
EXEC sp_configure 'ad hoc distributed queries', 1
RECONFIGURE
GO
出現錯誤(此版本的 SQL 服務器不支持鏈接服務器。)在鏈接服務器上執行(“從表中選擇 *”)
此版本的 SQL 服務器不支持“OPENROWSET”行集提供程序。
如MSDoc中所述, OPENDATASOURCE
和OPENROWSET
在 Azure SQL 數據庫中受支持,但數據文件必須在 Z3A580F142203677F1F0BC30898F63F5 中使用 B 存儲選項。
創建外部數據源並將示例 excel 文件上傳到 Azure Blob 存儲中。 添加所需的文件格式(請檢查以下示例)
CREATE EXTERNAL DATA SOURCE mydata
WITH (
TYPE = BLOB_STORAGE,
LOCATION = 'https://blb1209.blob.core.windows.net'
);
SELECT * FROM OPENROWSET(
BULK 'data/sample3.csv',
DATA_SOURCE = 'mydata',
SINGLE_CLOB) AS DataFile;
從本地
能夠使用任務從 Excel 導入數據 => 導入數據
檢查以下解決方法。
我們可以使用多種方式將 Excel 數據導入 Azur SQL。
右鍵單擊您的數據庫 => 任務 => 導入數據 Select 數據源為 Excel = > 瀏覽您的 Excel 文件
Select 目標作為 SQL 服務器的 Microsoft OLEDB 提供程序 => 輸入 SQL 服務器身份驗證的憑據
Output 在本地:
Output 在 Azure SQL
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.