JPAでテーブルを定義するときに "ORGANIZE BY ROW"引数を指定する方法はありますか?私が働いているコードは、私はあなたがorg.apache.openjpa.jdbcをサブクラス化することができようにJPA ORGANIZE BY ROWで@Tableを定義する方法
CREATE TABLE ANSWERS (CLASS VARCHAR(256), TEXT CLOB(1000000) NOT NULL) ORGANIZE BY ROW;
JPAでテーブルを定義するときに "ORGANIZE BY ROW"引数を指定する方法はありますか?私が働いているコードは、私はあなたがorg.apache.openjpa.jdbcをサブクラス化することができようにJPA ORGANIZE BY ROWで@Tableを定義する方法
CREATE TABLE ANSWERS (CLASS VARCHAR(256), TEXT CLOB(1000000) NOT NULL) ORGANIZE BY ROW;
ルックスに「BY ROWを整理し、」同等のものを追加したい
@Entity
@Table(name = "ANSWERS")
public class AnswerEntity {
@Id
@Column(name = "CLASS")
private String answerClass;
@Lob
@Column(name = "TEXT", unique = false, nullable = false)
private String answerText;
}
です。 sql.DB2Dictionaryとオーバーライド:
getCreateTableSQL
パブリック文字列[] getCreateTableSQL(表テーブル) 一連のSQL文を返して、指定された表を作成します。 には列があります。インデックスと制約は別々に作成されます。
public class CutomDB2Dictionary extends DB2Dictionary{
@Override
public String getCreateTableSQL(Table table){
String sql = super.getCreateTableSQL(table);
if(table.getName().equalsIgnoreCase("ANSWERS")){
sql += " ORGANIZE BY ROW";
}
return sql;
}
}
は設定でカスタムDB2辞書指定します。それが可能だとしても
<property name="openjpa.jdbc.DBDictionary" value="com.test.CutomDB2Dictionary "/>
これは、bluemixでjavaee7.0と一緒に使ってみましたか? DashDBを使用しているJPAでこれを動作させることはできません。 DashDBはデフォルトで列で整理し、JPAはそれでうまく機能しません。だから私は行ごとに整理でクエリを作成するtryignです。あなたのソリューションがdashdbで動作することを期待していましたが、動作させることができませんでした。助けてください。 –
これをBluemixサポートのクエリとして呼び出すことをお勧めします。これは「すぐに使える」ものでなければならないため、根本的な製品の問題があります。 –
mavenパッケージはDB2Dictionaryクラスですか? – Mindaugas
を、あなたはおそらくの物理的な実装の詳細を混在させることはできません(それがある場合、私は知りません) JPAが提供する抽象概念を持つデータベーステーブル。 – mustaccio