java - JDBC - csv 文件错误

标签 java csv jdbc connection

我有一个简单的问题,不知何故我看不出我的问题出在哪里。

我的 C:/Temp 文件夹中有一个 csv 文件。我想连接到 csv 以获取一些数据(取决于特定行数据、不同行......)。

所以我下载了 csvjdbc-1.0-28.jar 文件并将其添加到构建路径中。 我编写了如下所示的代码,但总是出现错误: “java.sql.SQLException:找不到合适的驱动程序”

我看到有些人也遇到了问题,但我没有明白我所遇到的问题背后的问题。我知道这与连接 conn 有关。我是否需要进行一些额外的 JDBC 设置或者如何添加连接路径?

提前致谢!

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

import org.relique.jdbc.csv.CsvDriver;

public class Main_Class {

    public static void main(String[] args) {

        try {

            try {
                Class.forName("org.relique.jdbc.csv.CsvDriver");
                Connection conn = DriverManager
                        .getConnection("c:\\temp\\Spieltage_log.txt");
                Statement stmt = conn.createStatement();
                ResultSet results = stmt
                        .executeQuery("select * from Offensiver_Zweikampf");
                boolean append = true;
                CsvDriver.writeToCsv(results, System.out, append);
                conn.close();
                System.out.println(results);
            } catch (SQLException e) {
                e.printStackTrace();
            }

        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }

        // JFrame fenster = new Main_Menue();
    }
}

最佳答案

根据 ( http://csvjdbc.sourceforge.net/)-

 // Create a connection. The first command line parameter is
  // the directory containing the .csv files.
  // A single connection is thread-safe for use by several threads.
  Connection conn = DriverManager.getConnection("jdbc:relique:csv:" + directoryName);

在你的情况下应该是 -

  Properties props = new Properties();
  props.put("fileExtension", ".txt");

  Connection conn = DriverManager.getConnection("jdbc:relique:csv:C:\\temp", props);

此外,您已将内容放入 txt 文件中,因此您需要指定一个自定义属性,其中文件扩展名为“.txt”。

您的 resultSet 对象可以使用以下语法查询文件 -

ResultSet results = stmt.executeQuery("select * from Spieltage_log");

关于java - JDBC - csv 文件错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35438070/

相关文章:

java - 在我的代码中添加一个计时器

java - JMockit测试类继承: mocked fields not injected when declared in parent class

bash - 如何在 bash 中转换 CSV 文件?

python - scrapy CSV编写

mysql - 使用 CSV 数据和 MySql 的简单等待时间项目的数据库结构

java - 用于应用程序级数据库加密的库和工具

java - 手动计算字符串 compareTo 字符串的输出

java - (J2ME) 如何获取我的 jar 应用程序中的文件/资源​​列表

java - 我的 JDBC 连接池有什么问题?

java - jdbc INSERT 到主键是自动编号的 MS Access 表中