`

jdbc的csv驱动

阅读更多
找到一个jdbc的scv驱动

http://www.sourceforge.net/projects/csvjdbc

例子
_id,_name,_qq
1,YING Zhuo,23007067
2,HU Haozhang,609370723
3,LIU Qixun,48365832


package cn.com.legendapl.csv.db;

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

import org.junit.Test;

public class TestCase_Database {

	@Test
	public void test() {
		Connection conn = null;
		Statement statement = null;
		ResultSet rs = null;
		
		try {
			Class.forName("org.relique.jdbc.csv.CsvDriver");
			
			conn = DriverManager.getConnection("jdbc:relique:csv:C:\\Users\\DellYing\\Desktop\\csv");
			statement = conn.createStatement();
			rs = statement.executeQuery("select _id, _name, _qq from contacts");

			while(rs.next()) {
				System.out.println(rs.getString("_id"));
				System.out.println(rs.getString("_name"));
				System.out.println(rs.getString("_qq"));
			}
			
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			if (rs != null) try{rs.close();}catch(SQLException ex) {}
			if (statement != null) try{statement.close();}catch(SQLException ex) {}
			if (conn != null) try{conn.close();}catch(SQLException ex) {}
		}
	}
}


在DriverManager.getConnection(url, props);可以指定一些参数
/** 
 * separator 参数设置: CSV 文件中数据分割符 
 */  
private static final String CSV_PROP_SEPARATOR = "separator";  
/** 
 * separator 参数设置: 首行包含数据否 
 */  
private static final String CSV_PROP_SUPHEADER = "suppressHeaders";  
/** 
 * fileExtension 参数设置: 文件类型 
 */  
private static final String CSV_PROP_FILEEXTEN = "fileExtension";  
/** 
 * charset 参数设置: 字符集 
 */  
private static final String CSV_PROP_CHARSET = "charset";  
/** 
 * ignoreHeaderLineNumber 参数设置: CSV文件头行数 
 */  
private static final String CSV_PROP_HEADERNUM = "ignoreHeaderLineNumber";



-------------------------------------------------------------------------------------
  • 不支持修改操作
  • 不支持PreparedStatement
  • 不支持多表连接
  • 不支持order by
  • 不支持group by
  • 不支持常用的sql函数
  • resultSet.getMetaData().getColumnCount()得到不是结果集列个数是整个csv的列数
分享到:
评论

相关推荐

    csvjdbc-r0-10导入示例工程

    csvjdbc是一款开源的Java驱动程序,它允许我们像操作标准数据库一样处理CSV文件,无需将CSV数据转换为传统的数据库格式。它提供了一个JDBC(Java Database Connectivity)驱动,使得通过SQL语句就能直接对CSV文件...

    JDBC2CSV:JDBC 到 CSV

    **JDBC2CSV: 使用Java将数据库数据导出为CSV** `JDBC2CSV` 是一个基于Java的小型工具,它的主要功能是通过Java数据库连接(JDBC)接口从关系型数据库中提取数据,并将其转换成逗号分隔值(CSV)格式的文件。这个...

    dih-csv-jdbc:使用 CSV-JDBC 读取 CSV 文件作为 JDBC 数据库的示例 Apache Solr 核心

    通过 CSV-JDBC 驱动,我们可以将 CSV 文件模拟为一个 JDBC 数据源,从而使 Solr 能够像操作传统数据库那样处理 CSV 文件。 首先,我们需要安装 CSV-JDBC 驱动。你可以从其官方网站或其他可信源下载最新的 jar 包,...

    CsvJdbc - CSV file JDBC driver-开源

    Java的只读JDBC驱动程序,使用逗号分隔值(CSV)文件作为数据库表。 编写数据导入程序和转换程序的理想选择。

    informix jdbc 文件

    标题中的“informix jdbc 文件”指的是与Informix数据库交互的Java数据库连接(JDBC)驱动程序。Informix JDBC驱动程序是IBM Informix数据库系统的一部分,它允许Java应用程序通过Java编程语言连接到Informix数据库...

    java使用javacsv读取csv文件 导入Mysql数据库

    首先,确保你的系统已经安装了MySQL驱动,并且添加了对应的JDBC驱动到项目中。如果你使用Maven,添加如下依赖: ```xml <groupId>mysql <artifactId>mysql-connector-java <version>8.0.27 ``` 然后,通过`...

    dbeaver-driver-all:dbeaver所有jdbc驱动都在这,dbeaver all jdbc drivers ,come and download with me , one package come with all jdbc drivers

    标题中的“dbeaver-driver-all”指的是DBeaver数据库管理工具的JDBC驱动程序集合,它包含了一系列用于连接各种数据库的Java Database Connectivity (JDBC) 驱动。DBeaver是一款开源、免费且跨平台的数据库管理和开发...

    java 大数据导出csv小工具

    4. `ojdbc14-10.2.jar`:这是Oracle JDBC驱动,用于Java连接Oracle数据库,是工具从Oracle数据库提取数据所必需的。 5. `javax.jar`:可能包含Javax标准库的一些组件,如多线程和网络通信等。 6. `jxl.jar`:这是一...

    动态加载jdbc jar包连接数据库生成数据文件

    这种方法允许程序在运行时加载特定的JDBC驱动,而不是在编译时硬编码。这样做的好处是能够应对多种数据库环境,提高代码的可移植性,并减少对系统资源的占用。以下是关于这个主题的详细解释: 1. **动态加载的概念*...

    mysql导出csv样例.zip

    首先,确保已经在项目中添加了MySQL的JDBC驱动(如mysql-connector-java.jar)作为依赖。 下面是一段示例代码,演示如何使用Java和JDBC将MySQL中的数据导出到CSV: ```java import java.io.FileWriter; import ...

    java导入csv到sqlserver数据库的简单实现

    确保添加Microsoft SQL Server JDBC驱动的依赖,然后使用`java.sql.Connection`接口建立连接。 导入数据的主要步骤如下: 1. **连接数据库**:使用`DriverManager.getConnection()`方法创建数据库连接。提供数据库...

    mysql的驱动与管理工具

    MySQL JDBC驱动分为两种类型:Type 1(纯Java驱动)和Type 4(完全Java驱动)。Type 4,也称为非JDBC桥驱动,如MySQL Connector/J,是最常见的,它提供高性能和直接的Java到MySQL服务器的通信。在Java项目中,添加...

    jmeter的JDBC测试

    例如,对于Oracle数据库,URL可能类似"jdbc:oracle:thin:@localhost:1521:ORCL",驱动类名为"oracle.jdbc.driver.OracleDriver"。 接着,添加"JDBC请求"采样器。在采样器中,我们可以设置SQL查询、存储过程调用或...

    将CSV、EXCEL、TXT等文件的数据导入到oracle中

    Excel(.XLS或.XLSX)文件通常包含更复杂的结构,但依然可以通过转换为CSV或直接使用Oracle的JDBC驱动来导入。 1. 转换为CSV:先将Excel文件另存为CSV格式,然后按照上面的方法使用SQL*Loader或SQL Developer导入。...

    csv导入数据库 java源代码

    首先,需要添加对应的数据库驱动JAR到项目中,然后通过`Class.forName()`加载驱动,使用`DriverManager.getConnection()`建立连接。 4. **SQL语句准备**:为了将CSV数据插入数据库,我们需要构建合适的SQL INSERT...

    jdbc+servlet增删改查

    - 加载并注册JDBC驱动 - 建立数据库连接 - 创建Statement或PreparedStatement对象 - 执行SQL语句 - 处理结果集 - 关闭资源 2. Servlet: Servlet是Java Servlet API定义的一种服务器端组件,用于扩展Web...

    aaa.rar_csv_java csv_oracle

    这通常通过Java Database Connectivity (JDBC) API完成,需要引入Oracle JDBC驱动。以下是一个基本的连接示例: ```java import java.sql.Connection; import java.sql.DriverManager; import java.sql....

    JDBC实现纵向导出数据库数据

    1. **引入JDBC驱动**:首先,确保你的项目中包含了对应数据库的JDBC驱动。例如,如果你使用的是MySQL,那么需要添加MySQL Connector/J的依赖。 2. **建立数据库连接**:使用`DriverManager.getConnection()`方法...

    读取jdbc上FTP放置文件

    使用JDBC的步骤通常包括加载数据库驱动、建立数据库连接、创建Statement或PreparedStatement对象、执行SQL语句以及处理结果集。在描述中提到的"读取jdbc,表数据",就是指通过编写Java代码,利用JDBC API查询数据库并...

    Ireport+oracle连接包安装资源

    在本资源中,提供了Ireport 5.6.0的Windows安装程序以及Oracle JDBC驱动程序ojdbc6.jar。 首先,我们需要了解Ireport。它是用于创建和编辑JasperReports的图形化界面工具,支持多种数据源,包括数据库、CSV文件、...

Global site tag (gtag.js) - Google Analytics