导出数据库数据的方法,适合简单的数据库表格结构
2008-11-03 10:12
597 查看
1 如果是导出数据库,可以用java调用数据库的备份SQl语句
2 如果仅仅导出数据,请参考如下样例,其中tablename是表格的名字,pk指是否包含主键
注意:对于二进制和包含特殊字符的字段数据,需要额外处理,目前这个只能用于最简单的。
另:可参考 phpMyAdmin的导出功能
本代码采用SQL Server 2000 数据库
2 如果仅仅导出数据,请参考如下样例,其中tablename是表格的名字,pk指是否包含主键
注意:对于二进制和包含特殊字符的字段数据,需要额外处理,目前这个只能用于最简单的。
另:可参考 phpMyAdmin的导出功能
本代码采用SQL Server 2000 数据库
<%@ page language="java" contentType="text/html; charset=GBK" pageEncoding="GBK"%> <%@ page import="java.sql.*"%> <% boolean showPK = ParamUtils.getIntParameter(request, "pk", 0) == 1; String tableName = request.getParameter("tablename"); if (tableName == null || tableName.trim().length() == 0) ...{ out.println("表格名称为空!"); return; } Connection con = null; Statement stat = null; ResultSet rs = null; try ...{ con = Factory.getDataSource().getConnection(); if (con == null) ...{ out.println("得到数据库连接失败!"); return; } stat = con.createStatement(); rs = stat.executeQuery("select * from " + tableName + " " + NoNull.toString(request.getParameter("sql"))); if(showPK)...{ out.print("SET IDENTITY_INSERT dbo."+tableName+" ON<br>"); } ResultSetMetaData md = rs.getMetaData(); String[] fieldNames = new String[md.getColumnCount()]; StringBuilder builder = new StringBuilder("insert into " + tableName + "("); for (int i = 0; i < md.getColumnCount(); i++) ...{ fieldNames[i] = md.getColumnName(i + 1); if (!showPK && fieldNames[i].equalsIgnoreCase("ID")) ...{ continue; } builder.append(fieldNames[i] + ","); } // 去掉最后一个逗号 builder.deleteCharAt(builder.length() - 1); builder.append(") values("); StringBuilder line = new StringBuilder(); String value; while (rs.next()) ...{ line.delete(0, line.length()); line.append(builder.toString()); for (int i = 0; i < fieldNames.length; i++) ...{ if (!showPK && fieldNames[i].equalsIgnoreCase("ID")) ...{ continue; } value = rs.getString(fieldNames[i]); if (value == null) ...{ line.append("null,"); } else ...{ line.append("'"); line.append(value); line.append("',"); } } line.deleteCharAt(line.length() - 1); line.append(");"); out.println(line.toString() + "<br/>"); } if(showPK)...{ out.print("SET IDENTITY_INSERT dbo."+tableName+" OFF<br>"); } } catch (Exception ex) ...{ out.print(ex); } finally ...{ if (stat != null) ...{ try ...{ stat.close(); } catch (Exception ex) ...{ } } if (con != null) ...{ try ...{ con.close(); } catch (Exception ex) ...{ } } } %>
相关文章推荐
- 导出数据库数据的方法,适合简单的数据库表格结构
- 导出数据库数据的方法,适合简单的数据库表格结构
- 如何使用mysqldump命令导入导出数据库下的数据或表结构(远程or本地都适合)
- SQL大圣之路笔记——初始化数据库时:导出原有数据库中的表结构及数据的方法
- mysql导出数据库表结构以及数据的方法
- sqlserver 2008 数据库表结构脚本及表数据导出方法
- SQLServer2008 导入和导出数据库表数据和结构的方法
- Oracle 9i 数据库 数据导入和导出的最简单的方法
- java导出数据库中Excel表格数据的方法
- 数据库表格数据导出到excel方法总结
- 关于.net程序中读取不规则的excle表格中的数据,并插入到数据库的方法
- datagridview中显示的数据导出到Excel——用最简单的方法解决科学计数法的问题
- 判断参数和数据库数据是否重复最简单的方法
- 4000 struts2页面下载,从数据库把数据以excel表格形式导出
- DB2 导出数据库中的表结构和数据
- Navicat导出表中数据的三种方法(单纯的数据,不包括表结构)
- Sql2012如何将远程服务器数据库及表、表结构、表数据导入本地数据库 自定义日志记录功能,按日记录,很方便 C#常量和字段以及各种方法的语法总结 类型,对象,线程栈,托管堆在运行时的关系,以及clr如何调用静态方法,实例方法,和虚方法 asp.net webapi 自定义身份验证
- 通过poi3.16把数据表的表结构导出成表格
- 从数据库导出数据到EXCEL换行的问题解决方法
- python脚本实现数据导出excel格式的简单方法(推荐)