在查詢分析器裡,操作資料庫物件選擇Lee直接寫 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檔案裡 SHEET1工作表中所有的列都讀進來,如果只想導部分列,可以
INSERT INTO 表 (a1,a2,a3) SELECT a1,a2,a3 FROM OPENROWSET("MICROSOFT.JET.OLEDB.4.0"
其實可以將 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(例項名)。 啟動模式更改為“自動”
在查詢分析器裡,操作資料庫物件選擇Lee直接寫 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(例項名)。 啟動模式更改為“自動”