フィールドに「smth」、「smth else」または「もう1つのもの」を持つエントリを作成することをユーザーが制限する(Oracleで)制約を追加しようとしています。基本的に、それは私がそれを書くだろう方法は次のとおりです。チェックSQLステートメントのネストされたクエリ
ALTER TABLE sometable
ADD CONSTRAINT sometable_text_chk
CHECK (
caption IN (
SELECT caption
FROM sometable
WHERE text NOT IN ('smth', 'smth else', 'one more thing')
)
)
残念ながら、この機会に巣クエリに許可されていないことのようです。おそらく回避策はありますか?
これはあまり明確ではありません。フィールド 'text'と' caption'の関係はどうですか? 'あなたがエントリを作成することからユーザを制限すると言うとき、あなたはどういう意味ですか?フィールド内に既に存在する? (あなたはフィールド 'キャプション'でユニークな値を持ってほしいと話していますか?) – Unreason