問題タブ [check-constraint]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
50527 参照

sql - 複数の列のチェック制約

SQLServer2008を使用しています

同じテーブルの複数の列でCHECKCONSTRAINTを使用して、データ入力を検証しようとしています。

エラーが発生しました:

列'AAAA'の列CHECK制約は、別の列、テーブル'XXXX'を参照します。

CHECKCONSTRAINTはこのようには機能しません。

FKを使用せずにこれを単一のテーブルに実装する他の方法はありますか?

ありがとう

これが私のコードの例です

0 投票する
1 に答える
1597 参照

sql - SQL Server 2008: すべての行の 1 つの値のみが 1 に設定され、その他の値が 0 に設定されることを保証する制約をチェックします。

すべての行で 1 つの値のみが 1 で、他のすべての値が 0 であることを保証する制約を列に作成する必要があります。

トリガーを使用したソリューションは存在しますが、何かを組み込みたいと思います。

そのようなことはまったく可能ですか?

0 投票する
1 に答える
1971 参照

sql - SQL テーブルで許可されるレコード数を制限するにはどうすればよいですか?

親と子の 2 つのテーブルがあるとします。親には MaxChildren (int) フィールドがあり、子には親レコードにリンクする Enabled (ビット) フィールドと ParentID (int) フィールドがあります。

Enabled = 1 の親ごとに MaxChildren を超えるレコードが存在できないような制約を設定したいと思います。これは、Child テーブル内のレコードを挿入または更新しようとすると、該当する MaxChildren の値、または該当する子レコードの現在の数よりも MaxChildren を下げようとする試みは失敗します。

私は MS SQL Server を使用していますが、標準的な SQL の方法があることを願っています。

0 投票する
2 に答える
6101 参照

sql - CHECK 制約を使用して数値以外の varchar2 (アルファベットのみ) を制限する方法は?

列 NAME が
あります。数字ではなく、文字のみを含める必要があり
ます CHECK 条件の使用方法:

または他の方法...

編集: Oracle データベースが使用されます。

0 投票する
1 に答える
6551 参照

sybase - 提供された文字列の長さを確認する

6 文字の文字列のみを渡すことを許可するドメインを定義しようとしています。私は次のように宣言しています。

しかし、これは 6 文字を超える文字列をキャッチしていないようです。それを強制する方法はありますか?

0 投票する
2 に答える
645 参照

sql - UDF を使用しない SQL チェック制約

次の(架空の)テーブルがあります。

Occupationテーブルには、 と の 2 つの行がありStudentますTeacher

B_Occupation_Person結合テーブルを使用すると、すべての人に職業を与えることができ、結合B_Course_Personテーブルを使用すると、教師をコースに関連付けることができます。

私の問題はB_Course_Person、教師のみを含めることができるようにしたいということです。

私の最初のアイデアは、このテーブルにチェック制約を追加することでしたが、UDF を使用してテーブルから人の職業を取得することによってのみ実行できB_Occupation_Personます。ここで読んだことから、チェック制約でUDFを使用するのは悪いことです。

Occupation私の2番目のアイデアは、テーブルに列を追加することB_Course_Personでしたが、データの冗長性が得られました...

ここで、最善の方法は何ですか?

ありがとう、

0 投票する
1 に答える
926 参照

java - チェック制約 SQL Server のメタデータ

varcharいくつかの異なる単語のみを値 (名前) として入力できるようにするために、列にチェック制約があるテーブルを保持する SQL Server データベースがあります。

このような

私がやりたいことは、Java のコンボボックスにこれらの名前を入力することです。データベースで変更される可能性があるため、手動で入力したくありません。メタデータから入力したい。

しかし、 or を使用してデータベースから情報を取得する方法を見つけることができませんでした(INFORMATION_SCHEMAまたはsys.objects、Java の DatabaseMetaData から)。

私は SQL Server を初めて使用しますが、どうにかしてその情報を取得することは可能ですか?

よろしく/フレッド

0 投票する
2 に答える
3439 参照

sql - 数制限をチェックするための制約を追加するSQLテーブル

Oracle DBでテーブルを作成し、列で許可されている数値が1、2、3になるように制約を追加しようとしています。

私は正しいことをしていますか、それとももっと良い方法ですか?

0 投票する
1 に答える
981 参照

entity-framework-4 - EF4自動チェック制約

EF4CodeFirstでチェック制約を指定するにはどうすればよいですか。

例:特定の値しか持てない文字列プロパティがあります。

0 投票する
1 に答える
4808 参照

sql - ある列の値が別のテーブルの別の列の値よりも大きくならないという SQL 制約

これはおそらく、ビジネス ロジックと DB 構造を融合しているため、あまり良い質問ではありませんが、私の決定ではありません。

ある列 (テーブル A、列 X) の値が、外部キーを介して参照される別の列 (テーブル B、列 Y) の値よりも大きくならないと推測する制約を定義することは可能ですか?

つまり、Y のすべての値に対して、Y < L を強制したいのですが、L は X の値で、TABLE_B.A_ID == TABLE_A.ID です。

私はDB2で作業しています。