如何把Excel数据转化成SQL语句-转
问题背景
在我们实际的程序开发、维护的过程中,很多时候都要和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语句。看不怎么明白的话,可以看看
如何把Excel数据转化成SQL语句-转的更多相关文章
- 项目总结04:SQL批量导入数据:将具有多表关联的Excel数据,通过sql语句脚本的形式,导入到数据库
将具有多表关联的Excel数据,通过sql语句脚本的形式,导入到数据库 写在前面:本文用的语言是java:数据库是MySql: 需求:在实际项目中,经常会被客户要求,做批量导入数据:一般的简单的单表数 ...
- excel数据通过构建sql语句导入到数据库中
拿到一张excel数据表格,数据格式如下图所示: 2.根据excel数据结果,构建保存excel数据的表结构 CREATE TABLE #tmpExcel(IP VARCHAR(100),IPAddr ...
- 使用excel中的数据快速生成sql语句
在小公司的话,总是会有要开发去导入历史数据(数据从旧系统迁移到新系统上)的时候.这个时候,现场实施或客户会给你一份EXCEL文档,里面包含了一些别的系统上的历史数据,然后就让你导入到现在的系统上面去. ...
- SQL点滴32—Excel中CONCATENATE函数生成SQL语句
原文:SQL点滴32-Excel中CONCATENATE函数生成SQL语句 当拿到一个Excel的时候需要将这里面的数据插入到数据库里面,该怎么办,除了使用SSIS数据导入之外还可以使用Excel中的 ...
- 根据excel表格字段生成sql语句
根据excel表格字段生成sql语句 1.1 前言 根据excel表格字段生成sql语句主要是利用了excel的拼接函数 CONCATENATE .该实例主要以mysql脚本支持.实例需求如下:exc ...
- VBS将本地的Excel数据导入到SQL Server中
VBS将本地的Excel数据导入到SQL Server中 高文龙关注0人评论1170人阅读2017-05-14 12:54:44 VBS将本地的Excel数据导入到SQL Server中 最近有个测试 ...
- Excel数据转化为sql脚本
在实际项目开发中,有时会遇到客户让我们把大量Excel数据导入数据库的情况.这时我们就可以通过将Excel数据转化为sql脚本来批量导入数据库. 1 在数据前插入一列单元格,用来拼写sql语句. 具体 ...
- [转]Excel数据转化为sql脚本
在实际项目开发中,有时会遇到客户让我们把大量Excel数据导入数据库的情况.这时我们就可以通过将Excel数据转化为sql脚本来批量导入数据库. 1 在数据前插入一列单元格,用来拼写sql语句. 具体 ...
- 1.4 数据库和常用SQL语句(正文)——MySQL数据库命令和SQL语句
前面我们已经讲述了,登录时,我们使用mysql –u root –p命令进行,此时如果设置了密码,则需要输入密码. 输入密码后即进入MySQL的操作界面,此时,命令行窗体左侧显示"mysql ...
随机推荐
- UWP:本地应用数据
获取应用的设置和文件容器 使用 ApplicationData.LocalSettings 属性可以获取 ApplicationDataContainer 对象中的设置. 注意:每个设置的名称最长可为 ...
- BZOJ_1029_[JSOI2007]_建筑抢修_(贪心+优先队列)
描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1029 \(n\)个任务需要完成,给出每个任务所需时间\(t_1\)与deadline\(t_2 ...
- HDU 5313 Bipartite Graph (二分图着色,dp)
题意: Soda有一个n个点m条边的二分图, 他想要通过加边使得这张图变成一个边数最多的完全二分图. 于是他想要知道他最多能够新加多少条边. 注意重边是不允许的. 思路: 先将二分图着色,将每个连通分 ...
- substring函数——sql
--substring( expression, start, length ) expression待截取的文字 start 截取位置的起始下标 length 要截取的长度 --左边第一个字符的下标 ...
- django - get_or_create() 使用提醒
[omron - debug] user_id建表的时候,不能使用unique,因为一个用户,可能有多个product_id,相对应的是,get_or_create()中的查询参数,如果在建表中有un ...
- [转] c#中 多线程访问winform控件
原文 c#中多线程访问winform控件的若干问题小结 我们在做winform应用的时候,大部分情况下都会碰到使用多线程控制界面上控件信息的问题.然而我们并不能用传统方法来解决这个问题,下面我将详细的 ...
- Inxi:获取Linux系统和硬件信息的神器
导读 在这篇文章里,我们将看到如何使用inxi来获取这些详情信息.在论坛技术支持中,它可以作为调试工具,迅速确定用户的系统配置和硬件信息. Inxi是一个可以获取完整的系统和硬件详情信息的命令行工具, ...
- 手势解锁自定义View
package com.rxx.view; import java.util.ArrayList; import java.util.List; import java.util.Timer; imp ...
- Partitioning by Palindromes
题意: 给定一个字符串,求能分成最小几个回文串 分析:简单dp dp[i]前i个字符能分成的最小数量 dp[i]=min(dp[i],dp[j-1]+1) (j-i 是回文串) #include &l ...
- bjfu1097 图标排列
这是2011年百度之星的一道题.这题的做法就是找规律,规律找对了,代码极水.规律我一开始也没有找到,后来经人提醒,发现如下规律:对于每个开发者,其所有应用的分离度和一定是其第一个应用与最后一个应用的距 ...