私はORMliteのドキュメントに精通していません。このパラメータが外部キーであることをクラスで宣言することは可能ですか?
例えば私はテーブル顧客を持っています:
@DatabaseTable(tableName = "customer")
public class Customer {
@DatabaseField(id = true)
private String customerName;
@DatabaseField
private String customerSurname;
@DatabaseField(foreign = true)
private String accountNameHolder;
@DatabaseField
private int age;
public Customer() {
}
}
AccountNameHolderは、テーブルAccountsのDatabaseField名を対象にする必要があります。どうやってするか?私はパラメータforeign = trueのみを見つけましたが、どのパラメータとそれがどのテーブルから表すかについては何もありません。
ありがとう
AccountNameHolderは、テーブルAccountsのDatabaseField名を対象にする必要があります。どうやってするか?
何が必要か正確にはわかりませんが、外部フィールドを名前ではなく実際のtypeに変更する必要があるかもしれません。
@DatabaseField(foreign = true)
private Account account;
内部的には、 ORMLite はaccount_id
フィールド(おそらく文字列名)をCustomer
テーブルに格納しますが、それについて心配する必要はありません。 Customer
をクエリすると、Account
フィールドに設定されているaccount
にはidフィールドが設定されていることに注意してください。 ORMLiteでアカウントも検索するには、foreignAutoRefresh=true
を設定する必要があります。
@Lalitが指摘したように、このテーマに関するいくつかのドキュメントがあります。ドキュメントに長い時間を費やしてきたので、役立つはずです。
また、いくつかの 外部フィールドに関するサンプルコード があります。
お役に立てれば。