SQLServer怎样导入excel

--从Excel文件里,导入数据到SQL数据库中,非常easy,直接用以下的语句:
/*===================================================================*/
--假设接受数据导入的表已经存在
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文件已经存在,并且已经依照要接收的数据创建好表头,就能够简单的用:
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"server名" /U"username" -P"password"'

--导出查询的情况
EXEC master..xp_cmdshell 'bcp "SELECT au_fname, au_lname FROM pubs..authors ORDER BY au_lname" queryout "c:\test.xls" /c -/S"server名" /U"username" -P"password"'

/*--说明:
c:\test.xls  为导入/导出的Excel文件名称.
sheet1$      为Excel文件的工作表名,一般要加上$才干正常使用.
--*/
posted @ 2014-10-13 09:47  lcchuguo  阅读(367)  评论(0编辑  收藏  举报