0

ユーザーが入力したデータをドロップダウンリストとして保存および取得するためのソリューションを探しています。


ユーザーは、品種の値を含む既存のドロップリストから始めたいと考えています。

品種選択リスト

<select>
<option value="0">select</option>
<option value="1">Afghan Hound</option>
<option value="2">Airedale Terrier</option>
<option value="3">American Bulldog</option>
<option value="4">Belgian Malinois</option>
</select>

品種テーブルが存在します

|breed_id|  breed_title   |
---------------------------
|   1    |  Afghan Hound  |
|   2    |Airedale Terrier|
|   3    |American Bulldog|
|   4    |Belgian Malinois|

breed_id値はpet値と一緒に保存されます

|pet_id| pet_name | pet_sex |breed_id|
--------------------------------------
|  1   | 'Foo Foo'|   'M'   |    2   |
|  2   | 'Sparky' |   'f'   |    4   |
|  3   |  'Spot'  |   'M'   |    1   |

品種には非常に多くの種類があり、誤った品種タイプを入力する可能性があるため、ユーザーは品種タイプを追加、編集、および削除できるようにしたいと考えています。

品種テーブル内/品種テーブルに品種タイプを編集および追加できることがわかります。しかし、ユーザーが品種を削除した場合、品種#2としましょう。

|breed_id|  breed_title   |
---------------------------
|   1    |  Afghan Hound  |
|   3    |American Bulldog|
|   4    |Belgian Malinois|

その品種へのペットの関連付けは失われます:

|pet_id| pet_name | pet_sex |breed_id|
--------------------------------------
|  1   | 'Foo Foo'|   'M'   |   (2)  |<<<<<<<
|  2   | 'Sparky' |   'f'   |    4   |
|  3   |  'Spot'  |   'M'   |    1   |

品種テーブルから削除されたbreed_idを持つペット間の関連付けについてはどうすればよいですか?

次回ペットが呼び出され、品種選択リストに入力しようとすると、品種#2はなくなります。ペットが今繁殖しているのをどうしたらいいですか?ドロップリストに今すぐ入力するにはどうすればよいですか?


これを処理するいくつかの方法を考えることができますが、正しい解決策やベストプラクティスはわかりません。

私は、ロジックまたはデータ入力方法、ソリューションのタイプがもっとあるかもしれないことを理解しています。解決策が何であれ、私はプロがこの種のことをどのように処理するかを知りたいだけです。

ありがとうございました : )

よろしく

4

1 に答える 1

0

削除された犬種を参照する犬の扱い方は、犬種を変更する必要がある理由によって異なります。

彼らは異なることを達成しようとしているので、それぞれの異なる理由は異なる結果をもたらします。いくつかは次のとおりです。

  1. 品種のスペルが間違っているか、名前が変更されました
  2. 2つの品種は実際には1つです
  3. 誤った(存在しない)品種が作成されました

それぞれの場合について、次の動作をお勧めします

  1. 名前を変更するには、既存の品種テーブルを更新するだけです。これを実行できることは、そもそも品種データを正規化する主な動機の1つです。

  2. マージして、「アフガンハウンド」「クチハウンド」が実際に同じ品種であると判断した場合は、最初に「アフガンハウンド」を参照しているすべての犬を「クチハウンド」を参照するように変更してから、「アフガンハウンド」を削除できます。ぶら下がっている参照を心配することなく、ハウンドの品種。

  3. 削除します。たとえば、 「Yo Mama」という品種が作成された場合、この品種タイプの犬も望まないと判断した場合は、最初に「Yo Mama」を参照しているすべての犬を削除してから、その品種を削除できます。犬を飼いたい場合は、「不明な」犬種を作成するか、犬種をNULL可能にし、すべてのヨママ」犬の犬種をNULLに設定してから犬種を削除することをお勧めします。

いずれにせよ、これらの結果は、特定のシステムに必要な動作のタイプによって異なりますが、これにより、いくつかの一般的なタイプの移行のアイデアが得られることを願っています。

于 2013-02-05T03:18:20.187 に答える