GBase 8a集群JDBC获取加载行数 Loaded Line,忽略行数skipped Line,任务ID等

生命之源; 2021-11-08 17:16:46

GBase 8a集群JDBC获取加载行数 Loaded Line,忽略行数skipped Line,任务ID等

package com.gbase.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import java.sql.SQLException;
import java.sql.Statement;

import com.gbase.jdbc.StatementImpl;

// NEED gbase-connector-java-8.3.81.53-build54.4-bin.jar 
public class TestLoad {

	public static void main(String[] args) throws Exception {
		String URL = "jdbc:gbase://192.168.174.61:5258/testdb?user=gbase&password=gbase20110531&useOldAliasMetadataBehavior=false&failoverEnable=true&hostList=192.168.174.61&gclusterId=vmax";
		// System.out.println(URL);
		Class.forName("com.gbase.jdbc.Driver");

		Connection con = DriverManager.getConnection(URL);

		Statement stat = con.createStatement();
		try {
			int rtn = stat.executeUpdate(
					"LOAD DATA INFILE 'ftp://gbase:gbase@192.168.174.61/zxq/2.txt' into table testdb.t1 fields terminated by ',' max_bad_records 0");
			System.out.println("loaded=" + rtn);// 成功加载的行数
			long skippedLines = ((StatementImpl) (stat)).getSkippedLines();
			System.out.println("Skipped=" + skippedLines);// 成功忽略的行数

			long taskid = ((com.gbase.jdbc.StatementImpl) (stat)).getLoadTaskID();// 任务编号
			System.out.println("LoadTaskId=" + taskid);// 任务编号

			ResultSet rs = stat.executeQuery("show gcluster load logs " + taskid + " limit 0,10");
			ResultSetMetaData rsmd = rs.getMetaData();
			int cols = rsmd.getColumnCount();
			while (rs.next()) {
				for (int i = 1; i <= cols; i++) {
					System.out.println(rsmd.getColumnName(i) + "==>" + rs.getString(i));
				}
			}

		} catch (SQLException ex) {
			ex.printStackTrace();
			System.out.println(ex.getErrorCode());
			System.out.println(ex.getMessage());
			// throw ex;
		}
	}

}

错误数据,可以根据taskId通过SQL获得。

...全文
1244 1 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
CSDN-Ada助手 2023-01-13
  • 打赏
  • 举报
回复
您可以前往 CSDN问答-Java 发布问题, 以便更快地解决您的疑问
内容概要:本文深入探讨了Kotlin语言在函数式编程和跨平台开发方面的特性和优势,结合详细的代码案例,展示了Kotlin的核心技巧和应用场景。文章首先介绍了高阶函数和Lambda表达式的使用,解释了它们如何简化集合操作和回调函数处理。接着,详细讲解了Kotlin Multiplatform(KMP)的实现方式,包括共享模块的创建和平台特定模块的配置,展示了如何通过共享业务逻辑代码提高开发效率。最后,文章总结了Kotlin在Android开发、跨平台移动开发、后端开发和Web开发中的应用场景,并展望了其未来发展趋势,指出Kotlin将继续在函数式编程和跨平台开发领域不断完善和发展。; 适合人群:对函数式编程和跨平台开发感兴趣的开发者,尤其是有一定编程基础的Kotlin初学者和中级开发者。; 使用场景及目标:①理解Kotlin中高阶函数和Lambda表达式的使用方法及其在实际开发中的应用场景;②掌握Kotlin Multiplatform的实现方式,能够在多个平台上共享业务逻辑代码,提高开发效率;③了解Kotlin在不同开发领域的应用场景,为选择合适的技术栈提供参考。; 其他说明:本文不仅提供了理论知识,还结合了大量代码案例,帮助读者更好地理解和实践Kotlin的函数式编程特性和跨平台开发能力。建议读者在学习过程中动手实践代码案例,以加深理解和掌握。

255

社区成员

发帖
与我相关
我的任务
社区描述
其他产品/厂家
社区管理员
  • 其他
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧