package saveToDB;
import java.text.ParseException;
import java.util.Date;
import java.util.Iterator;
import java.util.List;
import java.sql.BatchUpdateException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.sql.Statement;
import java.io.*;
import entity.StockPrice;
import manager.StockPriceCollecter;
import tool.MyConn;
public class SaveToMySQL {
/**
* updateCount
* TO: 为这星期的更新操作准备
* @param updateCounts
*/
public static void checkUpdateCounts(int[] updateCounts) {
for (int i = 0; i < updateCounts.length; i++) {
if (updateCounts[i] >= 0) {
System.out.println("Successfully executed; updateCount=" + updateCounts[i]);
} else if (updateCounts[i] == Statement.SUCCESS_NO_INFO) {
System.out.println("Successfully executed; updateCount=Statement.SUCCESS_NO_INFO");
} else if (updateCounts[i] == Statement.EXECUTE_FAILED) {
System.out.println("Failed to execute; updateCount=Statement.EXECUTE_FAILED");
}
}
}
/**
* 存储stockPriceList到数据库中
* @return
* @throws IOException
* @throws ParseException
* @throws ClassNotFoundException
* @throws SQLException
*/
public void print_s(List<StockPrice> stockPriceList) throws IOException, ParseException, ClassNotFoundException, SQLException{
Connection conn = null;
PreparedStatement pstmt = null;
System.out.println("GOOG,Connect the DataBase");
StockPriceCollecter collecter = new StockPriceCollecter();
stockPriceList = collecter.getStockPriceInfoByDate();
Iterator it = stockPriceList.iterator();
try {
conn = MyConn.getConn();
conn.setAutoCommit(false);
String query = "insert into stockdde(StockCode,date,Ddx,Ddy,Ddz,changeHand,rise) values(? , ? , ? , ? , ? , ? , ? )";
pstmt = conn.prepareStatement(query);
while(it.hasNext()){
//以下进行格式转换
java.sql.Date sqlDate = new java.sql.Date(((Date) it.next()).getTime());
double sqlDdx = Double.parseDouble(String.valueOf(it.next()));
double sqlDdy = Double.parseDouble(String.valueOf(it.next()));
double sqlDdz = Double.parseDouble(String.valueOf(it.next()));
String sqlChangeHand = (String) it.next();
String sqlRise = (String) it.next();
pstmt.setString(1, "600004");
pstmt.setDate(2, sqlDate);
pstmt.setDouble(3, sqlDdx);
pstmt.setDouble(4, sqlDdy);
pstmt.setDouble(5, sqlDdz);
pstmt.setString(6, sqlChangeHand);
pstmt.setString(7, sqlRise);
pstmt.addBatch();
}
//int[] updateCounts = pstmt.executeBatch();//计算更新条目 为本周的部分工作
// checkUpdateCounts(updateCounts);
pstmt.executeBatch();
conn.commit();
} catch (BatchUpdateException e) {
int[] updateCounts = e.getUpdateCounts();
checkUpdateCounts(updateCounts);
try {
conn.rollback();
} catch (Exception e2) {
e.printStackTrace();
}
} catch (Exception e) {
e.printStackTrace();
} finally {
pstmt.close();
conn.close();
System.out.println("GOOG,Finish");
}
}
private double ValueOf(Object next) {
// TODO Auto-generated method stub
return 0;
}
}
分享到:
相关推荐
总之,批量导入图片到Oracle数据库是一项涉及到Java编程、JDBC连接、SQL操作以及文件处理的任务。掌握这些技能对于处理大量图片数据的数据库应用至关重要,无论是Web应用、数据分析还是其他领域。通过理解和实践,你...
asp.net,sqlserver,导入数据,这些标签明确地表明了本文所涉及的技术领域,即 Asp.net 和 SqlServer 数据库,以及批量导入数据的操作。 部分内容解释 在网页中通过后台代码实现数据从 Excel 中批量导入到数据库中。...
以下将详细介绍批量导入数据库中数据的相关知识点。 1. **SQL语句导入**:SQL(Structured Query Language)是用于管理和处理数据库的标准语言。在SQL中,我们可以通过`LOAD DATA INFILE`(MySQL)、`BULK INSERT`...
在.NET开发环境中,批量导入Excel数据到数据库是一项常见的任务,特别是在数据分析、系统集成或报表生成等场景中。本文将深入探讨如何实现这个过程,并重点讨论数据校验和事务回滚两个关键环节。 首先,批量导入...
批量导入数据库记录是一种高效的方法,能够极大地提高数据处理速度。在这个“以批量方式导入数据库记录(2.0)”的主题中,我们将深入探讨如何使用C#编程语言和WinForm界面来实现这一功能。 首先,C#是微软开发的一种...
首先,批量导入数据库记录通常涉及到大量数据的快速输入,这在数据迁移、数据整合或数据分析时非常常见。有多种方法可以实现这一目标: 1. **使用SQL命令**:对于支持SQL语句的数据库(如MySQL、PostgreSQL、SQL ...
在这个例程中,它可能被用来显示待导入数据库的数据,例如从Excel或其他来源读取的数据。 描述中提到,程序会根据超级列表框中的行数循环执行插入记录的SQL语句。这意味着程序会遍历列表框中的每一项,对每一行数据...
通过这种方式,可以高效地执行批量导入操作,减少网络延迟。嵌入式API中的`GraphDatabaseService`是主要接口,可以用来执行Cypher查询。 3. **事务操作**:为了提高性能,批量导入通常会在单个事务中处理大量数据。...
在IT行业中,定时任务是常见的自动化操作,而本项目的核心在于定时读取PDF文件并将其内容批量插入到数据库。这个任务涉及到多个技术点,包括线程管理、PDF处理、数据库操作以及工具类的设计。以下是对这些知识点的...
在本例中,提供的`excelImport.py`脚本应该包含了上述部分或全部逻辑,用于实现快速批量导入Excel数据到MySQL数据库。根据实际需求,你可以对脚本进行调整,例如适应不同的数据库字段结构或处理更多Excel文件。
在"数据库连接及部分操作.e"源码中,我们可以学习到具体的实现细节,包括如何编写SQL语句,如何使用易语言的模块函数进行数据库操作等。通过对这段源码的学习和理解,你将能够熟练地使用易语言进行数据库交互,为...
在ASP.NET开发中,将Excel文件导入...总结,ASP.NET将Excel文件导入数据库涉及多个步骤,包括文件读取、数据处理、数据库操作以及用户交互。这个过程需要考虑性能、安全性和用户体验,确保数据准确无误地导入数据库。
本资源包提供了一个实用的解决方案,即使用C#编程语言批量导入Excel数据到Oracle 11G数据库。以下将详细阐述这个过程涉及的关键知识点。 首先,我们要了解C#。C#是由微软开发的一种面向对象的编程语言,广泛应用于...
在这个主题中,我们将探讨如何将CSV或Excel表格导入数据库以及如何使用SQL语言进行各种操作。CSV(Comma Separated Values)和Excel是常见的数据存储格式,广泛用于数据交换和分析。 **一、CSV和Excel表格** CSV是...
5. **批量导入到数据库**: Spring框架提供了JdbcTemplate或MyBatis等工具,可以方便地与数据库进行交互。将验证过的数据以批量的方式插入到数据库中,可以显著提高性能。在Spring Boot项目中,可以使用@...
这有助于批量导入操作的顺利进行。 2. **启动EndNote**:打开EndNote应用程序,确保你正在使用的是最新版本,因为旧版本可能不支持某些功能。 3. **创建或选择目标库**:如果你还没有EndNote库,需要新建一个;...
在IT行业中,尤其是在数据库管理和应用开发领域,批量导入数据是一项常见的任务。对于C#开发者来说,处理大量数据的导入能够显著提高工作效率,特别是在处理大数据集时。本篇将深入探讨如何在C#环境中进行批量导入...
ASP实现将Excel表格数据批量导入到SQLServer数据库的过程中涉及的知识点主要包括以下几个方面: 1. Excel数据读取技术:在ASP中,可以使用ADO(ActiveX Data Objects)技术,通过ADODB组件读取Excel文件的数据。...
标题中的“Excel文件导入数据库源码,可直接运行”指的是一个程序,它的主要功能是将Excel数据批量导入到Mysql数据库中。这个程序为开发者提供了一个便捷的方式,以处理大量结构化的Excel数据,并将其存储在关系型...
数据的批量导入通常涉及文件解析(如CSV或Excel)和数据库操作。Java 1.8的Stream API为处理大量数据提供了便利,可以使用并行流进行高效的批处理。MyBatis的动态SQL功能可以方便地编写插入语句,实现数据的批量...