package test;
import java.sql.*;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.Date; public class JDBCTest { public static void main(String[] args) { // 驱动程序名
String driver = "com.mysql.jdbc.Driver"; // URL指向要访问的数据库名
String url = "jdbc:mysql://172.33.0.190:3306/report"; // MySQL配置时的用户名
String user = "root"; // MySQL配置时的密码
String password = "123456"; try {
Class.forName(driver); Connection conn = DriverManager.getConnection(url, user, password); if (!conn.isClosed())
System.out.println("Succeeded connecting to the Database!"); Statement statement = conn.createStatement(); // String showTables = "show tables";
//
// ResultSet rs = statement.executeQuery(showTables);
//
// System.out.println("-----------------");
ResultSet rs=null; List tableLists = new ArrayList();
//tableLists.add("rpt_ci_cinema_summary_dt");
//tableLists.add("bm_ykfp_cinema_film_hall_ticket_dt");
//tableLists.add("rpt_fm_cinema_film_ticket_dt");
//tableLists.add("rpt_ci_cinema_hall_ticket_dt");
//tableLists.add("rpt_ci_cinema_payment_ticket_dt");
//tableLists.add("rpt_shop_cinema_goods_trade_dt");
//tableLists.add("rpt_shop_cinema_goods_chanl_trade_dt"); //tableLists.add("rpt_shop_cinema_goods_item_trade_dt");
//tableLists.add("rpt_shop_cinema_goods_combo_item_trade_dt");
//tableLists.add("rpt_fm_cinema_film_summary_dt");
tableLists.add("rpt_memb_cinema_membcard_addmoney_detail");
System.out.println(tableLists); /*while (rs.next()) {
String name = rs.getString(1);
if (name.startsWith("rpt") && name.endsWith("dt") && name.indexOf("_tr_") == -1)
tableLists.add(name);
}*/ // list2.stream().forEach(key -> System.out.println(key));
tableLists.stream().forEach(System.out::println); System.out.println("-----------------"); List dateLists = new ArrayList(); Date d1 = new SimpleDateFormat("yyyyMMdd").parse("20150101");//定义起始日期
Date d2 = new SimpleDateFormat("yyyyMMdd").parse("20160801");//定义结束日期
Calendar dd = Calendar.getInstance();//定义日期实例
dd.setTime(d1);//设置日期起始时间
while(dd.getTime().before(d2)){//判断是否到结束日期
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
java.lang.String str = sdf.format(dd.getTime());
System.out.println(str);//输出日期结果
dd.add(Calendar.DATE, 1);//进行当前日期加1
dateLists.add(str);
}
/*for (int i = 20160101; i < 20160132; i++) {
dateLists.add(String.valueOf(i)); }*/
System.out.println("-----------------" + dateLists.size());
dateLists.stream().forEach(System.out::println); for (int k = 0; k <dateLists.size(); k++) {
String dateStr=(String)dateLists.get(k);
System.out.println("----------" + dateStr); for (int j = 0; j < tableLists.size(); j++) { String tableName = (String) tableLists.get(j); String descTable = "desc " + tableName; rs = statement.executeQuery(descTable); List columnNameList = new ArrayList(); while (rs.next()) {
String name = rs.getString(1);
if (name != null)
columnNameList.add(name);
}
System.out.println("-----------------"); // String sqlSelect = "select * from
// "+"rpt_ci_cinema_chanl_new_trade_dt";
// String sqlInsert = "insert into student (Name,Sex,Age)
// values(?,?,?)"; String insertTable = "replace into" + " " + tableName + " " + "( ";
int columnNameSize = columnNameList.size();
for (int i = 0; i < columnNameSize; i++) {
insertTable += columnNameList.get(i);
if (i != columnNameSize - 1)
insertTable += ",";
}
insertTable += " )"; // ******Need change the date "20160502" to dateStr
insertTable += " select '"+ dateStr +"' AS BIZDATE,"; for (int i = 1; i < columnNameSize; i++) {
insertTable += columnNameList.get(i);
if (i != columnNameSize - 1)
insertTable += ",";
} insertTable += " from " + tableName + " where biz_date='20160601' "+";"; System.out.println("" + insertTable); statement.execute(insertTable); System.out.println("--####Finished execute insert into table : " + tableName);
} } rs.close();
conn.close(); } catch (ClassNotFoundException e) { System.out.println("Sorry,can`t find the Driver!");
e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally{
System.out.println("********************All Completed*****************");
}
}
}

  

mock数据。根据表中一天的数据模拟其他日期的数据的更多相关文章

  1. 【Excle】如何隐藏数据透视表中的错误值

    如下:数据透视表出现错误 怎么解决呢 步骤 方法① 单击数据透视表任意单元格→数据透视表工具→分析→选项→勾选"对于错误值显示"→确定 方法② 右键→数据透视表选项(同样可以修改)

  2. 使用SqlBulkCopy批量插入多条数据进入表中

    由于工作中项目需求结算一次生成一批相同批次号的数据插入一个表中,然后再通过另一页面展示出来,所以需要用到一次性插入一批数据,所以就采用了SqlBulkCopy插入一批数据 1 public stati ...

  3. 在已有数据的表中添加id字段并且自增

    各位大牛,小弟在开发过程中,遇到了这样一个问题,由于新功能的增加需要使原有的一张表的结构作出调整,需要添加一个id主键字段,但是因为表里有很多数据了,所以,怎样才能添加这个字段,并且使原有的数据也能够 ...

  4. 大数据量表中,增加一个NOT NULL的新列

      这次,发布清洗列表功能,需要对数据库进行升级.MailingList表加个IfCleaning字段,所有的t_User*表加个IfCleaned字段.   脚本如下 对所有的t_User表执行 a ...

  5. 【Excle数据透视表】如何得到数据透视表中某个汇总行的明细数据

    例如: 现在想得到"北京 汇总"的明细数据,该怎么处理呢? 步骤 右键数据透视表任意单元格→数据透视表选项→启用显示明细数据→确定→单击"北京 汇总"行最后一个 ...

  6. 十几万条数据的表中,基于帝国cms 。自己亲身体验三种批量更新数据的方法,每一种的速度是什么样的

    需求是 上传Excel 读取里面的数据.根据Excel中某一个字段,与数据表中的一个字段的唯一性.然后把 Excel表中数据和数据库表中数据一次更改.本次测试一次更新31条数据. 本次测试基于帝国cm ...

  7. 【Excle数据透视表】如何在数据透视表中使用合并单元格标志

    先有数据透视表如下: 现在看着这个格式不舒服,我们希望调整成如下这种样式 步骤 单击数据透视表任意单元格→右键→数据透视表选项→布局和格式→合并且居中排列带标签的单元格 注意:如果数据透视表报表布局不 ...

  8. Oracle中如何添加和修改包含日期的数据

    平时我们在sql sverver中我们添加包含日期的数据时,是直接将日期变成日期格式字符串,但是在Oracle中就不行了, 那么,如何添加包含日期数据 如:在oracle执行insert语句 /** ...

  9. (转载)IQ 16.0 SP02起支持从压缩文件直接装载数据到表中

    参考文档: http://m.blog.chinaunix.net/uid-16765068-id-4405877.htmlhttp://www.cnblogs.com/lichmama/p/4103 ...

随机推荐

  1. office word excel等图标显示异常

    1.查看注册表:查看参数对应的路径被删除,计算机搜索新的文件路径更改路径即可.以此类推~ 计算机\HKEY_CLASSES_ROOT\Excel.Sheet.12\DefaultIcon 正常exce ...

  2. Python学习日志9月16日

    刚才我差点睡着了,差资料的时候太费神,有些累. 今天早晨学习了<head first HTML and CSS>,今天把昨天没看了的关于字体和颜色的一章节看完了,真长.我详细的做了笔记,并 ...

  3. wxwidgets编译及环境配置

    wxwidgets编译及环境配置 安装步骤: 到www.CodeBlocks.org下载并安装CodeBlocks,最好下载MinGW版本的,可以省掉安装和配置GCC的麻烦. 到www.wxWidge ...

  4. (转)SpringMVC学习(三)——SpringMVC的配置文件

    http://blog.csdn.net/yerenyuan_pku/article/details/72231527 读者阅读过SpringMVC学习(一)——SpringMVC介绍与入门这篇文章后 ...

  5. 关于用终端运行php来测试推送的问题

    照网上的方法,合并好了证书的pem,密码也是对的,然后也写好了推送用的php文件,在终端里php这个文件,报错报错内容是:Warning: stream_socket_client(): SSL op ...

  6. 一个制作Xcode5插件的模板

    原Github地址:https://github.com/kattrali/Xcode5-Plugin-Template 安装将 本工成复制到~/Library/Developer/Xcode/Tem ...

  7. jquery插件serializeFormToObject

    $.fn.serializeObject = function() { var o = {}; var a = this.serializeArray(); $.each(a, function() ...

  8. WINDOWS-API:API函数大全

    操作系统除了协调应用程序的执行.内存分配.系统资源管理外,同时也是一个很大的服务中心,调用这个服务中心的各种服务(每一种服务是一个函数),可以帮肋应用程序达到开启视窗.描绘图形.使用周边设备的目的,由 ...

  9. JavaScript中数据类型和typeof返回的数据类型

    除了上图,要注意三点:1.symbol是ES6中新增的数据类型 2.typeof(null)结果是Object 3.typeof(Object)和typeof(Array)的结果是function,因 ...

  10. RedHat7搭建KVM虚拟机

    RedHat7搭建KVM虚拟机 1. 宿主机安装RedHat7.3系统 1.1选择语言 中文.简体中文(中国) 1.2安装位置 1.2.1自定义分区,选择LVM,将分区空间全部分配给根 1.2.2禁用 ...