0

外部キー参照列と自動インクリメント付きの主キー列で構成される Jackcess ライブラリを使用してテーブルを作成する必要があります。また、日付/タイムスタンプなどのすべての列にデフォルト値を指定するにはどうすればよいですか?

Jackcess cookbookで、テーブルを作成する 1 つの例を見つけましたが、上記のケースをカバーしていません。

上記をどのように実装できますか?

4

1 に答える 1

2

関係の作成

Jackcess 2.1.5 ではRelationshipBuilder、たとえば、を使用してリレーションシップ (および外部キー制約) を作成する機能が追加されました。

// example in the JavaDoc for RelationshipBuilder:
//
Relationship rel = new RelationshipBuilder("FromTable", "ToTable")
     .addColumns("ID", "FK_ID")
     .setReferentialIntegrity()
     .setCascadeDeletes()
     .toRelationship(db);

他の項目

  • オートナンバー型フィールドを持つテーブルの作成:

クックブックに示されているように、それは を使用して行われColumnBuilder#setAutonumber(true)ます。

  • フィールドのデフォルト値の設定:

これは、列に「DefaultValue」という名前の新しいプロパティを作成することで実行できます。

Table tbl = db.getTable("Donations");
Column col = tbl.getColumn("DonationDate");
PropertyMap pm = col.getProperties();
pm.put("DefaultValue", "Date()");
pm.save();

ただし、このデフォルト値は ACE/Jet およびUCanAccessで使用されますが、Jackcess自体は現在、新しい行をテーブルに追加するときに "DefaultValue" プロパティを尊重していないことに注意してください。

于 2016-10-05T15:15:19.310 に答える