jackcess を使ってデータベースを作成して、テーブルを作成するサンプルです。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import java.io.File; | |
import java.io.IOException; | |
import java.math.BigDecimal; | |
import java.sql.SQLException; | |
import java.sql.Types; | |
import java.text.ParseException; | |
import java.text.SimpleDateFormat; | |
import java.util.Map; | |
import com.healthmarketscience.jackcess.ColumnBuilder; | |
import com.healthmarketscience.jackcess.DataType; | |
import com.healthmarketscience.jackcess.DatabaseBuilder; | |
import com.healthmarketscience.jackcess.Database; | |
import com.healthmarketscience.jackcess.Table; | |
import com.healthmarketscience.jackcess.TableBuilder; | |
public class Database0 { | |
/** | |
* @param args | |
* @throws ParseException | |
*/ | |
public static void main(String[] args) throws ParseException { | |
// TODO Auto-generated method stub | |
try { | |
// mdb ファイルの作成 | |
Database db = new DatabaseBuilder(new File("/home/xxxx/Dropbox/doc/mdb/jack.mdb")) | |
.setFileFormat(Database.FileFormat.V2000) | |
.create(); | |
// テーブルを作成 | |
Table table = new TableBuilder("Test") | |
.addColumn(new ColumnBuilder("ID", DataType.LONG) | |
.setAutoNumber(true)) | |
.addColumn(new ColumnBuilder("Name", DataType.TEXT)) | |
.addColumn(new ColumnBuilder("Salary", DataType.MONEY)) | |
.addColumn(new ColumnBuilder("StartDate", DataType.SHORT_DATE_TIME)) | |
.toTable(db); | |
// データをテーブルに入力 | |
BigDecimal money_value=new BigDecimal("123000.0"); | |
table.addRow(1, "john"); | |
table.addRow(2, "taro",12300.0); | |
table.addRow(3, "mary",money_value,new SimpleDateFormat("yyyy-MM-dd").parse("2015-11-14")); | |
// 別のテーブルも作成 | |
Table newTable = new TableBuilder("NewTable") | |
.addColumn( | |
new ColumnBuilder("col1").setSQLType(Types.INTEGER) | |
.toColumn()) | |
.addColumn( | |
new ColumnBuilder("col2").setSQLType(Types.VARCHAR) | |
.toColumn()) | |
.addColumn( | |
new ColumnBuilder("col3").setSQLType(Types.CHAR) | |
.toColumn()).toTable(db); | |
// データをテーブルに入力 | |
newTable.addRow(1, "bar","thaa"); | |
newTable.addRow(2, "foo","wer"); | |
// データの取得 | |
for (Map<String, Object> map : newTable) { | |
System.out.println( | |
"col1 : " + map.get("col1") + | |
" col2 : " + map.get("col2") + | |
" col3 : " + map.get("col3") | |
); | |
} | |
} catch (IOException e) { | |
e.printStackTrace(); | |
} catch (SQLException e) { | |
e.printStackTrace(); | |
} | |
} | |
} |
https://gist.github.com/8d6d37a69f883f04e430
0 件のコメント:
コメントを投稿