Ejemplo n.º 1
0
 /**
  * 一意キー記述を処理します。
  *
  * @param entityMeta エンティティメタデータ
  * @param tableDesc テーブル記述
  * @param generator テーブルジェネレータ
  */
 protected void doUniqueConstraints(
     EntityMeta entityMeta, TableDesc tableDesc, TableGenerator generator) {
   for (UniqueConstraint uc : generator.uniqueConstraints()) {
     UniqueKeyDesc uniqueKeyDesc = uniqueKeyDescFactory.getCompositeUniqueKeyDesc(uc);
     if (uniqueKeyDesc != null) {
       tableDesc.addUniqueKeyDesc(uniqueKeyDesc);
     }
   }
 }
Ejemplo n.º 2
0
 /**
  * 一意キー記述を処理します。
  *
  * @param entityMeta エンティティメタデータ
  * @param tableDesc テーブル記述
  * @param table テーブル
  */
 protected void doUniqueKeyDesc(EntityMeta entityMeta, TableDesc tableDesc, Table table) {
   String singlePkColumnName = null;
   PrimaryKeyDesc primaryKeyDesc = tableDesc.getPrimaryKeyDesc();
   if (primaryKeyDesc != null && primaryKeyDesc.getColumnNameList().size() == 1) {
     singlePkColumnName = primaryKeyDesc.getColumnNameList().get(0);
   }
   for (ColumnDesc columnDesc : tableDesc.getColumnDescList()) {
     if (columnDesc.getName().equals(singlePkColumnName)) {
       continue;
     }
     UniqueKeyDesc uniqueKeyDesc = uniqueKeyDescFactory.getSingleUniqueKeyDesc(columnDesc);
     if (uniqueKeyDesc != null) {
       tableDesc.addUniqueKeyDesc(uniqueKeyDesc);
     }
   }
   for (UniqueConstraint uc : table.uniqueConstraints()) {
     UniqueKeyDesc uniqueKeyDesc = uniqueKeyDescFactory.getCompositeUniqueKeyDesc(uc);
     if (uniqueKeyDesc != null) {
       tableDesc.addUniqueKeyDesc(uniqueKeyDesc);
     }
   }
 }