2011-07-28 8 views
0

たとえば、私は列> shopping_cart.statusを持っています。この列ステータスは、各レコードの3つの値>「不完全」「完全」または「出荷」のいずれかを含む必要があります。私の質問は、これらが唯一の値であることを確認するアプリケーションでなければならないのですか、これをデータベース側でこの属性のドメインに組み込む必要がありますか?私のデータベースに追加されるデータの値を定義する最良の方法はどれですか?

答えて

1

enumは、正確に意味するものを使用してください。

ENUMは、テーブル作成時にカラム 明細書に明示的に列挙され 許容値のリストから選択された値を持つ文字列オブジェクトです。

列挙値は、引用符付きの文字列リテラルである必要があります。文字列値に評価される式でさえ、 式ではない可能性があります。

CREATE TABLE shoppingcards (
    shoppingcardstatus ENUM('incomplete', 'complete', 'shipped') 
); 

項目:私は見http://dev.mysql.com/doc/refman/5.0/en/enum.html

+0

たとえば、 あなたはこのようなENUM列を持つ表を作成することができます。私の列挙型リストを別のテーブルから生成できるので、テーブルを直接更新する必要はありません。だから私はテーブルに自分のオプションを追加し、有効なデータを受け入れて拡張することができるだろう。 –

関連する問題