如何通過語句將excel表資料寫入sql server

2022-02-23 01:10:13 字數 5567 閱讀 8818

1樓:d調的聰

傳送門

2樓:匿名使用者

在查詢分析器裡,直接寫 sql語句:

如果是匯入資料到現有表,則採用形式

insert into 表 select * from openrowset('microsoft.jet.oledb.

4.0' ,'excel 5.0;hdr=yes;database=c:

\test.xls',sheet1$)

如果是匯入資料並新增表,則採用形式

select * into 表 from openrowset('microsoft.jet.oledb.

4.0' ,'excel 5.0;hdr=yes;database=c:

\test.xls',sheet1$)

以上語句是將 excel檔案裡 sheet1工作表中所有的列都讀進來。

如果只想導部分列,可以

insert into 表 (a1,a2,a3) select a1,a2,a3 from openrowset('microsoft.jet.oledb.

4.0' ,'excel 5.0;hdr=yes;database=c:

\test.xls',sheet1$) 其實可以將 openrowset('microsoft.jet.

oledb.4.0' ,'excel 5.

0;hdr=yes;database=c:\test.xls',sheet1$)

當成一個表,例如我就寫過這樣一個句子:

insert into eval_channel_employee(channel,employee_id) select case a.渠道 when 'diy' then 1 when 'rdc' then 0 when 'kcm' then 2 else 3 end ,b.id from openrowset('microsoft.

jet.oledb.4.

0' ,'excel 5.0;hdr=yes;database=c:\temp\name.

xls',sheet1$) as a,pers_employee b where a.員工編碼 =b.code

簡單的方法:

sql2005中直接可以實現匯入功能 sql2008不知道可不可以。 操作過程如下:

第一步:登入到 sql server management studio

第二步:在 「物件資源管理器 」中右鍵單擊 「管理 」,在彈出列表中單擊 「匯入資料 」

第三步:在 「匯入嚮導 」對話方塊中單擊 「下一步 」,進入到 「選擇資料來源 」對話方塊,在 「資料來源 」列表中選擇 「microsoft excel 」,同時選擇相應的 excel 文件,完成後單擊 「下一步 」(一定要勾選該對話方塊中的 「首行包含列名稱 」,因此它是將 excel文件中的列標題為資料庫表中的列項標題)

第四步:指定目標資料庫服務,依次單擊 「下一步 」。。。。至到 「完成 」

第五步:重新打到 sql server management studio,進入到匯入的資料庫表,可以發現所匯入的 excel文件資料。

你試下下面的吧:

開啟sql server configuration manager,啟用sql server agent(例項名)。 啟動模式更改為「自動」

3樓:匿名使用者

這個需要使用dao元件實現。。這個需求大了,可私我。

怎樣用sql server 2008 sql語句將excel資料匯入到資料庫裡指定的表裡面?

4樓:

在查詢分析器裡,直接寫 sql語句:

如果是匯入資料到現有表,則採用

insert into 表 select * from openrowset('microsoft.jet.oledb.4.0'

,'excel 5.0;hdr=yes;database=c:\test.xls',sheet1$)

的形式如果是匯入資料並新增表,則採用

select * into 表 from openrowset('microsoft.jet.oledb.4.0'

,'excel 5.0;hdr=yes;database=c:\test.xls',sheet1$)

的形式。

以上語句是將 excel檔案裡 sheet1工作表中所有的列都讀進來,如果只想導部分列,可以

insert into 表 (a1,a2,a3) select a1,a2,a3 from openrowset('microsoft.jet.oledb.4.0'

,'excel 5.0;hdr=yes;database=c:\test.xls',sheet1$)

其實可以將 openrowset('microsoft.jet.oledb.4.0'

,'excel 5.0;hdr=yes;database=c:\test.xls',sheet1$)當成一個表,例如我就寫過這樣一個句子:

insert into eval_channel_employee(channel,employee_id)

select case a.渠道 when 'diy' then 1 when 'rdc' then 0 when 'kcm' then 2 else 3 end

,b.id from

openrowset('microsoft.jet.oledb.4.0'

,'excel 5.0;hdr=yes;database=c:\temp\name.xls',sheet1$) as a,pers_employee b

where a.員工編碼 =b.code

簡單的方法:

sql2005中直接可以實現匯入功能 sql2008不知道可不可以。

操作過程如下:

第一步:登入到 sql server management studio,

第二步:在 「物件資源管理器 」中右鍵單擊 「管理 」,在彈出列表中單擊 「匯入資料 」

第三步:在 「匯入嚮導 」對話方塊中單擊 「下一步 」,進入到 「選擇資料來源 」對話方塊,在 「資料來源 」列表中選擇 「microsoft excel 」,同時選擇相應的 excel 文件,完成後單擊 「下一步 」(一定要勾選該對話方塊中的 「首行包含列名稱 」,因此它是將 excel文件中的列標題為資料庫表中的列項標題)

第四步:指定目標資料庫服務,依次單擊 「下一步 」。。。。至到 「完成 」

第五步:重新打到 sql server management studio,進入到匯入的資料庫表,可以發現所匯入的 excel文件資料。

你試下下面的吧:

開啟sql server configuration manager,啟用sql server agent(例項名)。 啟動模式更改為「自動」

5樓:夢裡鳶飛

--啟用ad hoc distributed queries:

exec sp_configure 'show advanced options',1

reconfigure

exec sp_configure 'ad hoc distributed queries',1

reconfigure

-- 使用完成後,關閉ad hoc distributed queries:

exec sp_configure 'ad hoc distributed queries',0

reconfigure

exec sp_configure 'show advanced options',0

reconfigure

如何通過select語句查詢出來後,用sql語句把資料寫入到指定的excel中?

6樓:yhw馬前卒

給個示例

sub 去重()

dim cnn, sql$

set cnn = createobject("adodb.connection")

cnn.open "provider=microsoft.jet.

oledb.4.0;extended properties=excel 8.

0;data source=" & thisworkbook.fullname

sql = "select  distinct [aac001],[aac003],部門**,但未編號,基數,個人,單位,金額 from [明細$a3:h65536]  "

range("a2:i65536").clearcontents

range("a2").copyfromrecordset cnn.execute(sql)

cnn.close

set cnn = nothing

end sub

你可以參考一下。

7樓:匿名使用者

--excel2003

insert into openrowset('microsoft.jet.oledb.

4.0','excel 8.0;database=d:

\excel檔名.xls','select 欄位1,欄位2 from [sheet1$]')

select top 20 欄位1,欄位2 from student--excel2007

insert into openrowset('microsoft.ace.oledb.

12.0','excel 12.0;database=d:

\excel檔名.xlsx','select 欄位1,欄位2 from [sheet1$]')

select top 20 欄位1,欄位2 from student

怎樣把excel裡的資料作為條件 匯入到sql語句中

8樓:一點設計演示

1.開啟sql server management studio,按圖中的路徑進入匯入資料介面。

2.匯入的時候需要將excel的檔案準備好,不能開啟。點選下一步。

3.資料來源:選擇「microsoft excel」除了excel型別的資料,sql還支援很多其它資料來源型別。

4.選擇需要匯入的excel檔案。點選瀏覽,找到匯入的檔案確定。

5.再次確認檔案路徑沒有問題,點選下一步。

6.預設為是使用的winodws身份驗證,改為使用sql身份驗證。輸入資料庫密碼,注意:資料庫,這裡看看是不是匯入的資料庫。也可以在這裡臨時改變,選擇其它資料庫。

7.選擇匯入資料excel表內容範圍,若有幾個sheet表,或一個sheet表中有些資料不想匯入,則可以編寫查詢指定的資料進行匯入。點選下一步。

8.選擇需要匯入的sheet表,比如我在這裡將sheet表名改為price,則匯入後生面的sql資料庫表為price$。點選進入下一步。

9.點選進入下一步。

10.在這裡完整顯示了匯入的資訊,執行內容,再次確認無誤後,點選完成,開始執行。

11.可以看到任務執行的過程和進度。

12.執行成功:可以看看執行結果,已傳輸1754行,表示從excel表中匯入1754條資料,包括列名標題。

這樣就完成了,執行sql查詢語句:select * from price$就可以檢視已匯入的資料內容。

EXCEL如何實現多資料匹配,Excel表格中一對多資料的匹配怎麼實現?

使用vlookup函式啊,把你的附件上傳我幫你看下,你寫的太複雜了 excel 中一對多資料的匹配怎麼實現?10 1 首先,開啟需要操作的excel 在性別後面插入一列,將a2 b2兩列資料合併。2 接著,按同樣的方法將源資料裡面的姓名和性別兩列資料合併。3 兩個資料都合併好後,選中成績d2列,找到...

如何將excel資料匯入mysql

引用別人的教程,說的挺好 如何將excel資料匯入oracle?如何將excel資料匯入mysql 1 安裝mysql workbench 2 將excel檔案另存為csv格式 3 開啟要匯入資料的表,選擇匯入外部資料 4 點選開啟即可 如果有用圖形介面的話有一個匯入外部資料選項,裡面有匯入exce...

如何將Excel資料匯入Bartender 10 1 Bartender中文官網

1 準備好excel,如圖,第一行為列名,列名下的全部都是資料。2 雙擊條碼,在屬性對話方塊中選擇資料來源,在型別選項中點選更改資料來源型別按鈕。3 在更改資料來源嚮導中選擇資料庫。4 然後選中我們剛剛做好的excel檔案,然後一直確認。5 回到屬性對話方塊中,在使用域中選擇載入出來的列名。6 然後...