1

動的フィールドを格納できるサービスを構築したい。たとえば、登録ユーザーは、アプリケーションの特定の領域で汎用フォームフィールドを動的に作成、読み取り、更新、および削除し、動的フォームをデータベースに保持できます。これらの汎用フォームフィールドには、ユーザーが必要とする情報がすべて格納されます。そのような問題に取り組むための最良の方法は何ですか?(これはデータベース設計の質問です)

4

2 に答える 2

1

MongoDB、CouchDB、RiakなどのNo SQLドキュメントストアを検討してみませんか?

于 2012-09-30T00:41:17.873 に答える
0

私は一度同じようなことをしなければなりませんでした。

私が使用する最小のデザインは次のようになります。

フォームメタデータを定義するには、次の3つのテーブルが必要です。

形:

  • FormID(PK)
  • FormName

FormFields:

  • FormFieldID(PK)
  • FieldID
  • FormID

田畑:

  • FieldID(PK)
  • フィールド名
  • FieldType

そして、フォームインスタンスデータを格納するための2つのテーブル:

FormInstaces:

  • FormInstanceID(PK)
  • FormID
  • ユーザーID

FormFieldInstances:

  • FormFieldInstanceID(PK)
  • FormInstanceID
  • FormFieldID
  • 値(これはテキストである必要があり、型変換を管理する必要があります)

これは私が知っている最高の設計ではありませんが、これを使用して複数値フィールドをサポートすることもできます。型変換はアプリケーションレベルで管理する必要があります

于 2012-09-04T15:49:49.167 に答える