问题背景 在我们实际的程序开发、维护的过程中,很多时候都要和Excel打交道。 因为用户的数据很多时候是Excel存储的。 公司维护项目的时候,经常要帮客户导入Excel数据,这些数据很多,零 碎,而且数据不是很规范。我们经常需要整理过的Excel表变成Sql语句。最 后,把Sql语句在客户的服务器上执行。 客户要求更新的时候很多多,甚至占了比开发还要长的时间。但我一直 没有找到比较理想的解决方法。下面是我的一些比较无奈的解决方法,为的 是抛砖引玉。 解决方法 1, 把Excel通过DTS包导入到数据库中,再通过软件生成Sql脚本。以前用过 QueryCommander。可惜生成的Sql语句很难达到要求。 问题一:是不够灵活。比方用户的数据不符合要求,然后要到数据 库里更改,数据库的编辑能力是很差的。 问题二:转换成你想要的Sql语句很难。(可能我没发现软件) 2, 通过Excel中的公式来生成Sql语句。 问题一:一旦表中的某个字段是关联到另外的表,就比较麻烦 问题二:要借助很多其它工具,数据库查询工具,UE等。 3, 期待您更好的方法。。。 在工作中,我用的一般用的是第二种方法,下面我就介绍下第二种方法 简单示例(Excel变成Sql) 我这里的演示要完成的就是把它们转变成一条条如下图Sql INSERT INTO logistic_basestation ( physicalbasestation_id, logisticbasestation_name, basestation_type,project ) values ( 'GZYW01587' ,'体育西站(地铁3号)', '宏蜂窝', '12' ) 如何利用Excel的公式生成SQL语句 首先,我们可以手工创建一条如上图一样的Sql语句。 然后,SQL查询分析器中执行,确定是正确的语句。 再利用Excel单元格中(A1,B1,C1,D1)的数据来 代替上图中具体的值具体操作是在单元格E2的公式栏 输入下面的公式。 " INSERT INTO logistic_basestation ( physicalbasestation_id, logisticbasestation_name, basestation_type, project ) values( ( '"&A2&"','"&B2&"','"&C2&"','"&D2&"' ) " 即可以得到一条插入数据的Sql语句。 把鼠标移到写了公式的单元格的右下角,当单元格有下角变成, 鼠标变成瘦瘦的十字架的时候,单击鼠标左健往下拉,这样就生成了所有的五 条Sql语句。看不怎么明白的话,可以看看