[英]Importing selected information from excel to with SQL with select into
我正在嘗試從特定文件中導入特定信息,並將其放入工作簿中。
讓:
“ Bluelake.xlsm”將是文件名(工作簿)“ Time”將是工作表信息在表“ C3”至“ C8”中。
sql表的參數為:
TableName:processStatus
列:processStatus,值是:varchar(32)/任何字符串
我的問題:
我知道“插入”的書呆子示例:
INSERT INTO table_name(column1,column2,column3,...)VALUES(value1,value2,value3,...);
不幸的是,我不知道如何擴展它。
先感謝您。
INSERT INTO processStatus (processStatus1, processStatus2, processStatus3
,processStatus4, processStatus5, processStatus6)
SELECT (C3, C4, C5, C6, C7, C8)
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0',
'Excel 12.0;HDR=YES;Database=Bluelake.xlsx',
'select * from [Time$]');
注意:如果實際上在Excel工作表中已命名列,則需要在此處替換它們。
而且您沒有為processStatus表提供列名,因此我用通用名稱替換了它們,您也需要在代碼中替換它們。
您的“數據庫”必須是Excel文件的標准文件路徑。
最后,如果確實需要更改數據類型,則需要CAST每列。 例如:
CAST(C3 AS VARCHAR(32))
希望這可以幫助!
編輯:另一件事,您可能需要為XLSX使用不同的OLEDB驅動程序。 如果它是一個簡單的電子表格,則可能更容易從Excel中另存為舊格式(XLS)。 或者,您可以更進一步,使用SQL導入向導將Excel數據放入表中,然后您的INSERT INTO語句將更加簡化,因為您只需從表中進行選擇,而不使用OPENROWSET來查詢Excel文件。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.