`
cjc
  • 浏览: 680793 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

偷懒工具设计之sql2Excel

阅读更多

偷懒工具设计之sql2Excel

今天在公司陪山东客户调试,远程登录,我在linux下什么工具都没有,用ssh登录服务器,直接用mysql查询数据库,提出记录中的所有汉字全是乱码。哎,可恶的公司,不让我用windows,要不我就可以用putty或者EMS了,我ft!
甚是不爽之下,我决定自己写个工具了,把客户数据库中的数据全部提取并保存到Excel中,这样我不就可以一目了然了嘛,嘿嘿,好吧,那我就写一个工具吧。

第一部分就是谁都会的jdbc操作,连接数据库,提取数据集合。
Connectioncon;
Statementstate;
/***//**初始化连接
*
@paramserverIp
*
@paramdataBase
*
@paramuserName
*
@parampassword
*
@throwsClassNotFoundException
*
@throwsSQLException
*/

publicvoidinit(StringserverIp,StringdataBase,StringuserName,Stringpassword)throwsClassNotFoundException,SQLException...{
Class.forName(
"com.mysql.jdbc.Driver");
//配置数据源
Stringurl="jdbc:mysql://"+serverIp+"/"+dataBase+"?useUnicode=true&characterEncoding=GB2312";
con
=DriverManager.getConnection(url,userName,password);
}

/***//**得到查询结果集
*
@paramsql
*
@return
*
@throwsSQLException
*/

publicResultSetgetResultSet(Stringsql)throwsSQLException...{
state
=con.createStatement();
ResultSetres
=state.executeQuery(sql);
returnres;
}

/***//**关闭连接
*
@throwsSQLException
*/

publicvoidclose()throwsSQLException...{
if(con!=null)
con.close();
if(state!=null)
state.close();
}

第二部分就是把ResultSet中的记录写入一个Excel文件
操作Excel,我用的是jxl,不熟的同学可以参考:利用java操作Excel文件
/***//**将查询结果写入Excel文件中
*
@paramrs
*
@paramfile
*
@throwsSQLException
*/

publicvoidwriteExcel(ResultSetrs,Filefile)throwsSQLException...{
WritableWorkbookwwb
=null;
try...{
//首先要使用Workbook类的工厂方法创建一个可写入的工作薄(Workbook)对象
wwb=Workbook.createWorkbook(file);
}
catch(IOExceptione)...{
e.printStackTrace();
}

if(wwb!=null)...{
WritableSheetws
=wwb.createSheet("sheet1",0);
inti=0;
while(rs.next())...{
Labellabel1
=newLabel(0,i,rs.getString("id"));
Labellabel2
=newLabel(1,i,rs.getString("category"));
try...{
ws.addCell(label1);
ws.addCell(label2);
}
catch(RowsExceededExceptione)...{
e.printStackTrace();
}
catch(WriteExceptione)...{
e.printStackTrace();
}

i
++;
}


try...{
//从内存中写入文件中
wwb.write();
//关闭资源,释放内存
wwb.close();
}
catch(IOExceptione)...{
e.printStackTrace();
}
catch(WriteExceptione)...{
e.printStackTrace();
}

}

}

测试程序:
Sql2Excelse=newSql2Excel();
try...{
se.init(
"127.0.0.1","mydabase","root","1234");
ResultSetrs
=se.getResultSet("selectid,categoryfromxx");
se.writeExcel(rs,
newFile("/root/sql2excel.xls"));
se.close();
}
catch(ClassNotFoundExceptione)...{
e.printStackTrace();
}
catch(SQLExceptione)...{
e.printStackTrace();
}


呵呵,比较简单吧,不过还是很有用的,其实那些数据库查询工具EMS,Mysql Query Browser之类的和这个差不多,掌握了原理,我们也可以自己开发查询工具,备份工具。
分享到:
评论

相关推荐

    Excel导出SQL SlobII懒汉2

    标题中的“Excel导出SQL SlobII懒汉2”指的是一个工具或程序,可能是由一个爱偷懒的程序员开发的,用于将Excel电子表格中的数据转换成SQL INSERT语句,以便快速将数据导入到数据库中。这个工具可能是C#语言编写的,...

    《偷懒的技术:打造财务Excel达人》示例文档.rar

    《偷懒的技术:打造财务Excel达人》是一本旨在帮助财务工作者提升Excel技能的书籍,其示例文档提供了丰富的Excel使用技巧。在这个压缩包中,我们可以找到各种与财务工作相关的Excel应用实例,这些实例覆盖了数据分析...

    偷懒的技术:打造财务Excel达人》示例文档.rar

    在财务管理中,Excel是一款不可或缺的工具,其强大的计算能力、数据管理和分析功能使得它成为财务专业人士的首选。《偷懒的技术:打造财务Excel达人》示例文档提供了许多实用的Excel技巧,帮助财务人员提高工作效率...

    Excel2DB-Excel导入数据共通程序

    项目之余,发现很多项目都需要Excel导入导出的功能,每次重复代码的Coding以令我忍无可忍, 终于在一个"寂寞难耐"的周末,完成了一个Excel导入数据库(支持Sql Server 2000,2005; Access,Oracle未测试)的共通程序(可配置...

    SQLPrompt V7.2数据库代码提示插件

    SQLPrompt V7.2 Sql代码提示工具, 数据库是大家在项目开发中肯定会用到的,C#项目用的最多的就是微软自家的SQL Server了。不可否认,微软的Visual Studio开发平台很好用,很直观的体现就是智能提示。敲几个字符,...

    SQL SERVER版代码生成工具(2004版)

    本版本是04年当时开发项目时,为了节省工作量,开发的一个辅助工具...之所以添加了单一模式的是因为一些小心活动项目,就直接用这个代码来偷懒了。 其它的没什么特别说明的了,使用中遇到问题,可以随时和我联系。。。

    ExcelToHtmlTable转换算法:将Excel转换成Html表格并展示(项目源码+详细注释+项目截图)

    Excel2HtmlTable的主要功能就是把Excel的内容以表格的方式,展现在页面中。 Excel的多个Sheet对应页面的多个Tab选项卡。 转换算法的难点在于,如何处理行列合并,将Excel的行列合并模型转换成Html表格的行列合并模型...

    VB中调用Excel生成图表[总结].pdf

    2. 创建 Excel 实例 创建 Excel 实例可以使用 CreateObject 函数,例如:`Set x1 = CreateObject("Excel.Application")`。这将创建一个新的 Excel 实例。 3. 添加工作簿 在 Excel 实例中,可以添加工作簿,以便...

    图书管理系统ASP+SQLServer2000-适合课程设计

    图书管理系统,ASP+SQLServer2000 自己做的,做得很简单,适合要求不高的人。 这是数据库课程设计时做的 适合课程设计偷懒的人。 如果毕业设计的话,有点太简单了,不过可以在这基础上新增。

    Excel答疑汇集word版

    文档《偷懒的技术》读友群Excel答疑汇集.docx中包含了丰富的Excel使用技巧和解决方案,以下是一些关键知识点的概述: 1. 数据输入与格式化: - 快速填充:Excel中的快捷键Ctrl+D可以快速填充同一列或行的相同数据...

    课程设计基于Java实现的校园快递代拿系统源码+sql数据库+项目详细说明.zip

    课程设计基于Java实现的校园快递代拿系统源码+sql数据库+项目详细说明.zip 1、该资源内项目代码都是经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、...

    试用EXCEL电子财务技术

    全面方便初出茅庐人员学习EXCEL电子表格制作与学习用商用环境的介绍与参考。

    偷懒的程序员

    在IT行业中,“偷懒”并不是指不负责任地逃避工作,而是指通过高效的工作方式、自动化工具及优化流程等手段来提高工作效率,减少重复劳动。本文将深入探讨如何成为一个聪明的“偷懒”程序员。 #### 一、利用现有...

    偷懒道具,分页工具

    不跳转页面分页工具,依赖于jQuery,默认样式依赖于bootstrap3.0,通过最大行数和显示 行数计算出分页总数,通过设置的样式结构决定前台展示出现的样式,目前存在两种展出模式,可通过定义扩展方式,增加展出样式。

    会计干货之财务工作常用Excel公式集锦及解析(第一季).doc

    在会计工作中,Excel是不可或缺的工具,特别是在处理财务数据时,掌握一些常用的Excel公式和技巧能大大提高工作效率。本文由梁志飞老师精心编辑,旨在分享财务工作中的Excel实用技巧。 一、按科目级次筛选 在财务...

    窗口置顶快捷隐藏小工具(偷懒神器)

    窗口置顶快捷隐藏小工具(偷懒神器),把视频或网页缩小后放到桌面一角,ctrl + Q 隐藏,Ctrl + E 显示,上班看片小工具

    各种EXCEL的操作,表格,拿来就可以用的excel资源

    2. **公式与函数**:Excel的核心功能之一就是计算,比如SUM求和,AVERAGE求平均值,COUNT计数,IF条件判断等。深入理解并灵活运用这些函数可以简化大量手动计算的工作。 3. **数据分析**:Excel提供了数据分析工具...

    用Excel做的五子棋

    以前在办公室偷懒时写的一个二人对战用的五子棋程序。用excel写的。用VBA实现的。

    你早该这么玩Excel 伍昊.

    *你是个表格“菜鸟”,对着一堆函数和技巧犯晕,觉得此生成为Excel高手无望? *你是个“表”哥或“表”姐,自认阅“表”无数,而且早已审“表”疲劳? *你是公司的Boss,经常拿着报表做决策,却没有发现表中有个...

    你早就该这么玩Excel.pdf

    《你早该这么玩Excel》内容简介:你是个表格“菜鸟”,对着一堆函数和技巧犯晕,觉得此生成为Excel高手无望?你是个“表”哥或“表”姐,自认阅“表”无数,而且早已审“表”疲劳?你是公司的Boss,经常拿着报表做...

Global site tag (gtag.js) - Google Analytics