ひがやすを技術ブログ

電通国際情報サービスのプログラマ

DataSet

RDBMSとやりとりするときのインターフェースがどんな感じが良いのか、
考えています。
今考えているのは、
SqlReader(DataSource dataSource)
SqlReader.addTable(String tableName)
SqlReader.addTable(String tableName, String condition)
SqlReader(DataSource dataSource, String[] tables)
指定されたテーブルの全データを取得する。
SqlReader(DataSource dataSource, String[ ] tables, String[ ] conditions)
指定されたテーブルのデータをcriterions[index]でフィルタリングして取得する。
サンプル
SqlDataReader reader = new SqlReader(dataSource);
reader.addTable("dept");
reader.addTable("emp", "empno = 7788");
DataSet dataSet = reader.read();
deptのデータは全件、empのデータはempno = 7788のデータのみを対象とする。
データの読み込みは、
SqlWriter(DataSource dataSource)
DataWriter writer = new SqlWriter(dataSource);
writer.write(dataSet);
Excelのデータをデータベースにロードするには、
DataReader reader = new XlsReader("hoge.xls");
DataWriter writer = new SqlWriter(dataSource);
writer.write(reader.read());
データベースのデータをExcelに書き出すには、
DataReader reader = new SqlReader(dataSource, ..., ...);
DataWriter writer = new XlsWriter("hoge.xls");
writer.write(reader.read());
みたいな感じかしら。