日期:2014-05-18  浏览次数:20481 次

菜鸟求EXCEL导入数据库的代码
自己捣弄vb,
有 工资表.xls,想写代码,导入sql2000中的工资表,其中的各字段名称相同。
也参考过网上很多的代码,都有弊端。
求高手详解。


------解决方案--------------------
try
SQL code
Insert into 工资表
Select * 
From 
OpenRowSet('MICROSOFT.JET.OLEDB.4.0','EXCEL 8.0;HDR=YES;IMEX=2;DataBase=d:\工资表.xls',[工资$])

------解决方案--------------------
最近自己也在写这个东西,感觉仅是导入不难,难的是如何判断导入的信息有效性!
------解决方案--------------------
如果是SQL的话,本身就支持直接从Excel中导入.
------解决方案--------------------
参考 http://blog.csdn.net/orchidcat/article/details/7480680

2000类似,用jet 4 即可。
------解决方案--------------------
bulk insert 这个就可以用的. 你百度一下应该有很多.
 另外如果觉得有弊端, 要看看是什么弊端, 如果弊端是说插入空值或其他问题, 可以先把你的数据从excel导入到临时表,然后通过操作临时表去insert到实体表

------解决方案--------------------
SQL code


insert  into  tab
SELECT * 
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0', 
'Data Source="c:/test.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions

------解决方案--------------------
探讨
bulk insert 这个就可以用的. 你百度一下应该有很多.
另外如果觉得有弊端, 要看看是什么弊端, 如果弊端是说插入空值或其他问题, 可以先把你的数据从excel导入到临时表,然后通过操作临时表去insert到实体表

------解决方案--------------------
SQL code

--将Excel的数据导入SQL server :
SELECT * into newtable
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
  'Data Source="c:\book1.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$]
--实例:
SELECT * into newtable
FROM OpenDataSource( 'Microsoft.Jet.OLEDB.4.0',
  'Data Source="c:\Finance\account.xls";User ID=Admin;Password=;Extended properties=Excel 5.0')...xactions