微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Clickhouse 批量执行不插入新行

如何解决Clickhouse 批量执行不插入新行

我刚刚在本地安装了一个 clickhouse 服务器,带有包 clickhouse-server linux 包。 我创建了一些 java 代码来在表中插入 N 行,它通过 JDBC 运行良好。 但是为了提高性能,我现在使用批处理而不是单独的插入来实现它,但是下面的代码不起作用并且 executeBatch 函数返回一个长度为 0 的数组。

出于测试目的,我创建了以下代码

    public static void main(String[] args) throws PulsarClientException,sqlException {

       Connection con = null;
       String connectionString = "jdbc:clickhouse://localhost:8123/bank";

        try {
            con = DriverManager.getConnection(connectionString);
        } catch (sqlException throwables) {
            throwables.printstacktrace();
     
        String query = "INSERT INTO bank.test (numero,palavra) VALUES (3,'girassol');";

        Statement stmt = con.createStatement();

        con.setAutoCommit(false);      
        try {
            stmt.addBatch(query);
            stmt.addBatch(query);
            stmt.executeBatch();

            con.commit()
        
        }catch (Exception e)
        {
            e.printstacktrace();
        }
        con.close();

    }

stmt.executeBatch(); 返回 0 个元素,并且没有向 clickhouse 服务器插入任何内容。我只是通过替换连接字符串在 Postgres 数据库上测试了相同的代码,它按预期工作。 我在 clickhouse 上缺少什么配置吗?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。