자바

2017-02-18 9 views
0

내가 자동으로 .accdb 데이터베이스를 만들기 위해 노력하고 있습니다를 사용하여 데이터베이스를 .accdb 만들기하지만 난 create() 기능을 사용하여 컴파일 오류가 얻을 :자바

Library Folder

Error Overview

내가이의 코드를 사용합니다 SO 답변 : Create an Access database file (.mdb or .accdb) using Java

public class JackcessLibrary { 
    private static Database createDatabase(String databaseName) throws IOException { 
     return Database.create(new File(databaseName)); 
    } 

    private static TableBuilder createTable(String tableName) { 
     return new TableBuilder(tableName); 
    } 

    public static void addColumn(Database database, TableBuilder tableName, String columnName, Types sqlType) throws SQLException, IOException { 
     tableName.addColumn(new ColumnBuilder(columnName).setSQLType(Types.INTEGER).toColumn()).toTable(database); 
    } 

    public static void startDatabaseProcess() throws IOException, SQLException { 
     String databaseName = "C:/Users/abdulwhab/Desktop/database/db.accdb"; // Creating an MS Access database 
     Database database = createDatabase(databaseName); 

     String tableName = "Employee"; // Creating table 
     Table table = createTable(tableName) 
       .addColumn(new ColumnBuilder("Emp_Id").setSQLType(Types.INTEGER).toColumn()) 
       .addColumn(new ColumnBuilder("Emp_Name").setSQLType(Types.VARCHAR).toColumn()) 
       .addColumn(new ColumnBuilder("Emp_Employer").setSQLType(Types.VARCHAR).toColumn()) 
       .toTable(database); 

     table.addRow(122875, "Sarath Kumar Sivan","Infosys Limited.");//Inserting values into the table 
    } 

    public static void main(String[] args) throws IOException, SQLException { 
     JackcessLibrary.startDatabaseProcess(); 
    } 
} 

답변

3

당신은 t를 사용 그는 새로운 버전의 Jackcess 2.1.3, 당신이 링크 된 5 년 된 대답을 1.2.6 사용합니다.

DatabaseBuilder.create(FileFormat, File) 

Jackcess API를 사용하는 방법에 대한 자세한 내용은 http://jackcess.sourceforge.net/cookbook.html를 참조하십시오 버전에서는 버전 2

을 도입 할 때 Jackcess의 API를 사용하면 데이터베이스가 빌더를 사용하여 만든 사용하는 여러 변화를 겪었다. 미래에 다른 사람의 선명도와 용이성에 대한

+0

짝짓기 thankx 그것은 나를 도와! –

0

는 기능을

File file = new File("C:/Users/abdulwhab/Desktop/database/test.accdb"); 
    Database db = new DatabaseBuilder(file).setFileFormat(Database.FileFormat.V2000).create(); 
    return db; 

주를 만드는 데이터베이스에 다음과 같은 변경을 수행 내가 이전에 jackess jar 파일의 버전을 chnage하지 않았다.

없음 chnages 코드를 제외하지되었다 :

+0

이것은 charset, timezone 등과 같은 다양한 다른 옵션을 지정하고자 할 때 데이터베이스를 만드는 좋은 방법입니다. 단지 파일 포맷과 파일을 제공하고 싶다면 정적 인 편리한 메소드'create()'를 사용해야합니다. 대신 내 대답에서. 이것은 훨씬 더 짧습니다 :'return DatabaseBuilder.create (Database.FileFormat.V2000, file);' – Leviathan