如何把Excel中的数据导入到数据库啊,Excel中的数据格式是不规则的,而且希望发布后服务器不装office就能

Excel中涉及到几十张表的数据
之前是这样做的,可以这样做的话,发布后服务器需要安装Excel才可以用
public static DataSet ExcelToDataSet(string filePath, string sheetName)
{
实例化ds
string connString = "Provider=Microsoft.Ace.OleDb.12.0;" + "Data Source=" + filePath + ";" + "Extended Properties='Excel 12.0;HDR=Yes;IMEX=1';";
OleDbConnection conn = new OleDbConnection(connString);
OleDbCommand command = new OleDbCommand();
command.Connection = conn;
command.CommandText = "SELECT * FROM [" + sheetName + "$]";
。。。。 }

要导入数据库,应该使用数据库支持的文档和格式,如果要在没有Office中都能打开,TXT的文件就可以在大部份的软件中打开,你应该向数据使用人了解数据导入接口所需要的文件格式。追问

额。。。什么意思,不明白。。。

追答

一般要导入到其他系统中,是有规定的格式的,而不是自已相怎设都可以的,所以你需要向对方了解清楚需要的格式才可以按他的格式设置

追问

是啊,我也觉得是啊,可是业务人员给客户的模版就是这样的,领导要求按照这样的模版做,我不会弄,领导让我自己研究啊!

追答

他给你的模板也是Excel档案吗?如是直接做就是了,还有其他原因,如需帮助可传档案看下有没有可以帮忙的,邮箱:[email protected]

追问

你好!刚才给你发了一封邮件,谢谢你的帮助!

追答

只见到Excel的档案,看不出服务器需的的档案格式
在指标说明中见到许多数据是在下拉框中选择或补输的,应该是在他提供的系中中操作的,如果不在他的系统中操作,则应有一个导入接口,以便读取用户提供的数据,因此,还是应与系统提供人联系需要的档案类型,才能将Excel转换成他所需的类型文档

这个表中是有设置的下拉输入的不是在其他系统输入的,是在本表中录入的,他们提供的表就是这样的吧,还有其他什么要求?

追问

对,提供的表就是这样的,不用管指标说明和合同信息那两个sheet页,那两个sheet页可以删除掉,只需要前面那个sheet页的数据,那个sheet页对应的才是需要导入到数据库的数据!

追答

是你导入还是你提供这个表给他就可以了呢
你现在是要做什么呢

追问

这个是业务人员给客户的Excel模版,客户根据这个模版录入历史数据,我要根据这个Excel用asp.net开发程序,实现把Excel中的数据导入到数据库中对应的表字段。我之前做的程序发布后需要服务器安装office软件才能解析到Excel中的数据,才能导入,但现在要求服务器不能随便安装office和驱动,因为没有正版的,所以就想用其他的程序实现数据的导入,这种方法不需要服务器安装任何东西导入。

追答

原来是这样,不好意思,asp.net我不会用,帮不到你
服务器是否可以识别网页的档案呢,如果可以则可以转换成*.HTML格式

发了档案到你邮箱

追问

转换成html格式后能获取到里面的数据吗?

追答

*.HTML同样可以得到所有Excel输入的数据,你打开档案是与Excel相同的,打开可以用Internet Explorer打开,当然也可以用Excel打开。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-27
你手动把它搞成一行,录成宏,然后改一下宏批量处理就行了。追问

这个是业务人员给客户收集历史数据的模版,不能改的!

追答

呵呵。你不会复制一份改吧?你要总的数据。不是要模版。

相似回答
大家正在搜