我在试图更新一些代码时遇到了一个非常烦人的问题。所讨论的代码从本地MS access文件(*.mdb)中读取一些(实际上是很多)信息,然后对这些数据执行几个操作(只是简单的东西)。请记住,我只需要阅读数据库,仅此而已。
这是访问数据库的部分代码,variavle“path”是一个字符串,包含mdb文件的绝对路径,正如我所说,这个文件是本地的。
public void openConection()
{
try
{
Properties props = new Properties();
props.put ("charSet", "ISO-8859-1");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String dbURL = "jdbc:odbc:Driver={Microsoft AccessDriver (*.mdb)};DBQ=";
dbURL += this.path + ";DriverID=22;READONLY=false)";
this.connection = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft AccessDriver (*.mdb)};DBQ=" + this.path, props);
this.statement = this.connection.createStatement();
System.out.println("Success");
}catch(Exception e)
{
System.out.println("Error :" + e);
}
}
这将引发以下错误:
[Microsoft][ODBC驱动程序管理器]未找到数据源名称,且未指定默认驱动程序
("jdbc:odbc:Driver={Microsoft AccessDriver (*.mdb)};DBQ=" + this.path, props
泽格皮
您可以尝试使用Java API直接从文件中读取。外面有几个图书馆。
你可以试试Jackcess。是免费的。
xml有一个简单的变更集,它创建了一个表,只是为了在一开始测试liquibase。 但我不会走这么远,因为当我运行项目时 我收到以下错误:
我正在使用http://csvjdbc.sourceforge.net/doc.html要将磁盘上的CSV文件(例如“myDir”中的“myFile”)视为SQL DB,我可以使用SQL语法进行查询: 这工作正常,但是当CSV文件没有头时,我遇到了麻烦。在那种情况下,第一数据线被认为是报头并且因此不像其他数据线那样被读取。 有没有办法告诉查询不要寻找标头,而将第一行视为数据输入?
问题内容: 最终用户(开发人员或生产人员)可以推荐一个Sql驱动程序包,最好使用“ database / sql”包。我对Postgres,ODBC,MySql(以及可能用于高容量的其他商品(即,不是Sqlite)的其他商品)感兴趣,这些商品最好可在Windows和/或Linux(最好同时使用)上使用。令我感兴趣的是,它可能需要最近进行了更新/维护,并且必须与最新的Go版本一起使用。效率(吞吐量)
我创建了一个存储空间类型的结构,并创建了一个扫描函数来帮助查询数据库中的行。我有问题插入这种类型。 我可以使用以下sql插入数据; 如果在database/sql/driver中使用值接口; 类型值接口{} 价值是司机必须能够处理的价值。它要么是nil,要么是以下类型之一的实例: int64 浮动64 布尔 []字节 字符串[*]除行以外的所有位置。下一步。 时间,时间 并使用此代码; 最后,我将
在执行简单查询时,我有一个重复的查询。文件: someclass.java: someclassRepository.java: service.java: Application.Properties: 日志文件:
我正在尝试在springboot项目中使用h2数据库,我是HikariDataSource,我得到了以下例外: 我认为我的pom.xml和配置类是正确的 url:jdbc:h2:~/test-driverClassName:org。h2、司机 关于我做错了什么有线索吗?