問題タブ [check-constraints]

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 投票する
1 に答える
14066 参照

sql-server - ある列の値を別の列より大きくすることはできません

1つの列の値が次の列より大きくならないテーブルを作成しようとしています。たとえば、次のテーブルを作成しています。

また、現在の価格はOriginalPriceより大きくすることはできません。

だから私がやろうとしたのは

しかし、これは私に次のエラーを与えます:

同じテーブルの列を参照することはできませんか?

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

php - フォームの検証に postgres 制約を使用する

postgresql データベースに移行しており、できるだけ多くの制約チェックを使用したいと考えています。問題は、Web フォームを検証したいときに、保守が難しい重複コードがたくさんあることです。このデータベース チェックを Web フォームの検証にも使用できますか? アプリケーションは PHP で作成され、データベース層はpommです。目標は、PHP アプリケーションで追加のルールを定義せずに、すべての入力された値を取得してデータベースに送信し、失敗したすべての制約を取得することです。最も簡単な方法でそれを達成するにはどうすればよいですか?

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

sql - 変更コマンドがチェック制約と競合しました (ただし、制約に違反する行はありません)

SQL Server 2008 にチェック制約を追加しようとしています。このコードを実行すると、次のエラーが発生します。

エラーが発生します:

ALTER TABLE ステートメントが CHECK 制約 "noWWWifProgramIsKnown" と競合しました。データベース「db」、テーブル「dbo.tableuniversalservice」で競合が発生しました。

SO に関する Marc_s の回答によると、これは b/c 一部の行が制約に違反している可能性が高い: ALTER TABLE ステートメントが競合している

ただし、これは 0 を返すため、制約に違反する行はありません。

私は何が欠けていますか?

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

sql - SQL Server Unique Combination チェック制約

重複の可能性:
一意の制約、NULL 値を除く

住所のテーブルがあり、所有者にメインの住所を1つだけ持たせたいとしましょう。まず、インデックス/キーまたはチェック制約を定義しますか? これは何という表現でしょうか?

だから私は(IsMain ==true AND ownerId)のユニークな組み合わせが必要です

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

sql - Postgres でのリレーションシップへのテーブルの必須参加

Postgresへの強制参加を表す最良の方法は何ですか? 以前は CHECK 制約を使用するか、Sybase で INSERT および DELETE TRIGGER を使用して実行していました。Postgres は CHECK 制約でサブクエリをサポートしていないため、トリガーを正しく取得できません。

次の代替手段を見つけたいと思います。

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

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

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

このような

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

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

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

よろしく/フレッド

0 投票する
4 に答える
5976 参照

sql - 以前の値に基づいて列が更新されないようにするSQL制約

チェック制約(またはその他の手法)を使用して、レコードが更新されたときに以前の値と矛盾する値が設定されないようにすることはできますか。

1つの例は、「file_exported」のように何かが起こったことを示すNULLタイムスタンプです。ファイルがエクスポートされ、NULL以外の値が設定された後は、そのファイルを再度NULLに設定しないでください。

もう1つの例は、ヒットカウンターです。この場合、整数は増加のみが許可されますが、減少することはできません。

postgresqlを使用しているのに役立つが、SQL実装に適合するソリューションが欲しい

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

sql - 複雑な外部キー

次のようなテーブルがあります。

私がやろうとしているのは、列ごとに有効なエントリを効果的に制限できるテーブル駆動型の制約を追加することです。たとえば、2 番目のテーブルを作成した場合:

次に、Table1 の列 "Option_1" に格納されている値が Table2 の列 "FK_Value" に存在し、"FK_Name" の値が "Option_1" であることを確認します。

これは小切手または FK のいずれかで可能ですか?

** 列のデータ型が一致するように編集します。テーブル宣言の例を手入力してタイプミスしましたが、これは問題とは関係ありませんでした。FK のやり方は知っていますが、私が説明しているような FK のやり方は知りません。

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

sql - 自己参照とあいまいな列を持つリレーショナルテーブル

私は、ブラウザでレンダリングされた一連のボックスを追跡するシステムのリレーショナルデータモデルを作成しています。各ボックスには、レンダリングされた画像が含まれています。

現在、1つのテーブルがあります:ボックス。各行には、x座標とy座標、幅と高さの列、および画像コンテンツのタイプ(mimeタイプなど)とコンテンツの場所(ファイルパスやURLなど)の列があります。

一部のボックスには1層のネストがあります。つまり、1つのボックスに別のボックスを含めることができます。このような場合、コンテンツタイプの列には特別な値「box」があり、場所はBoxテーブルへの自己参照です。

一部のコンテンツタイプ(少数派)には、コンテンツタイプに関連付けられた追加の値があります。たとえば、画像ファイルがより複雑な複数ページ形式(PDFなど)の場合、どのページをボックスにレンダリングするかを保存する必要があります。

  • これを1つのテーブルで表すことはできますか/すべきですか?この場合、追加のパラメーターを(たとえば)ファイルURL(/path/to/PDF.pdf?page=4)にクエリ文字列として格納できます。

  • 自己参照ボックスの行の更新を処理するにはどうすればよいですか?つまり、別のボックスを含むボックスを削除する場合は、両方の行を削除する必要があります。場所の列に外部キー制約を使用することはできません。URL(ネストされていないボックスの場合)またはボックスの行ID(ネストされたボックスの場合)のいずれかである可能性があるためです。

0 投票する
4 に答える
992 参照

sql - Oracle2属性のCHECK制約の問題

テーブル「Student」といくつかの属性があります。そのうちの2つはこの特定の問題で重要です。「ジュニア」の分類(グレードレベル)の生徒は、正確に55〜84時間(クレジット)であることを確認する必要があります。

これが私がこれまでにOracleで宣言に関して持っているものです(不要なコードを削除しました):

Oracleは次のエラーをスローします。

制約を正しくフォーマットしていないことは確かですが、教授は宣言に約3秒を費やし、自分でそれを理解するように指示しました。1属性の制約は知っていますが、2つの属性を同時に組み合わせる方法がわかりません。誰かが私を助けることができますか?

*基本的に、他のコードでは、ネストされたifステートメントのように見えます。

それをSQLに変換できないようです。このくそったれの間隔が奇妙であるならば、私は私の命を救うためにそれをフォーマットすることができないことをお詫びします。