excel導入sqlserver數據庫方法
excel導入sqlserver數據庫方法
怎樣將Excel中的數據導入到SQL Server 2000數據庫中,今天,學習啦小編就教大家如何解決問題的方法!
Excel導入sqlserver數據庫方法如下:
1、打開企業(yè)管理器,打開要導入數據的數據庫,在表上按右鍵,所有任務-->導入數據,彈出DTS導入/導出向導,按 下一步 ,
2、選擇數據源 Microsoft Excel 97-2000,文件名 選擇要導入的xls文件,按 下一步 ,
3、選擇目的 用于SQL Server 的Microsoft OLE DB提供程序,服務器選擇本地(如果是本地數據庫的話,如 VVV),使用SQL Server身份驗證,用戶名sa,密碼為空,數據庫選擇要導入數據的數據庫(如 client),按 下一步 ,
4、選擇 用一條查詢指定要傳輸的數據,按 下一步 ,
5、按 查詢生成器,在源表列表中,有要導入的xls文件的列,將各列加入到右邊的 選中的列 列表中,這一步一定要注意,加入列的順序一定要與數據庫中字段定義的順序相同,否則將會出錯,按 下一步 ,
6、選擇要對數據進行排列的順序,在這一步中選擇的列就是在查詢語句中 order by 后面所跟的列,按 下一步 ,
7、如果要全部導入,則選擇 全部行,按 下一步,
8、則會看到根據前面的操作生成的查詢語句,確認無誤后,按 下一步,
9、會看到 表/工作表/Excel命名區(qū)域 列表,在 目的 列,選擇要導入數據的那個表,按 下一步,
10、選擇 立即運行,按 下一步,
11、會看到整個操作的摘要,按 完成 即可。 軟件開發(fā)網
當然,在以上各個步驟中,有的步驟可以有多種選擇,你可以根據自己的需要來選擇相應的選項。例如,對編程有興趣的朋友可以在第10步的時候選擇保存DTS包,保存成Visual Basic文件,可以看看里面的代碼,提高自己的編程水平。
如:SQL語句導入EXcel數據初一招生
insert into czzs2011 select kh,xm,cj1,cj2,zf,bz from
OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 5.0;HDR=YES;DATABASE=g:\czzs2011.xls',sheet1$)
SQL語句導入/導出EXCEL
導入/導出 生成Excel
--從Excel文件中,導入數據到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$)
/**//**//**//*===================================================================*/
--如果從SQL數據庫中,導出數據到Excel,如果Excel文件已經存在,而且已經按照要接收的數據創(chuàng)建好表頭,就可以簡單的用:
insert into OPENROWSET('MICROSOFT.JET.OLEDB.4.0'
,'Excel 5.0;HDR=YES;DATABASE=c:\test.xls',sheet1$)
select * from 表
--如果Excel文件不存在,也可以用BCP來導成類Excel的文件,注意大小寫:
--導出表的情況
exec master..xp_cmdshell 'bcp 數據庫名.dbo.表名 out "c:\test.xls" -c -S"服務器名" -U"用戶名" -P"密碼"'
--導出查詢的情況
exec master..xp_cmdshell 'bcp "select au_fname, au_lname FROM pubs..authors ORDER BY au_lname" queryout "c:\test.xls" -c -S"服務器名" -U"用戶名" -P"密碼"'
/**//**//**//*--說明:
c:\test.xls 為導入/導出的Excel文件名.
sheet1$ 為Excel文件的工作表名,一般要加上$才能正常使用.
--*/