2016-10-11 13 views
0

は、私は次の属性を持つテーブルの名前STUDENTを持っている: Oracleのテーブルに存在するすべての制約のリストを取得する方法は?

enroll VARCHAR(20), 
name VARCHAR(50), 
age INT, 
fees FLOAT(6,2) 

は今、私はすべての制約が(主キー、ユニークキー、NOT NULLで、などのように)このテーブルに存在しているものを知りたいです。親切に私にこれをどうやって手に入れることができるのか教えてください。

+0

Oracleドキュメントを表示することができます詳細については

C (check constraint on a table) P (primary key) U (unique key) R (referential integrity) V (with check option, on a view) O (with read only, on a view) 

MySQLのテーブルの – rohit

答えて

0

のためのWebブラウザモードを使用する必要があります覚えていますUSER_CONSTRAINTSおよびUSER_CONS_COLUMNSを使用して、列名、制約の種類および表名をフェッチします。

SELECT ucc.COLUMN_NAME, uc.CONSTRAINT_TYPE ,uc.TABLE_NAME 
FROM USER_CONSTRAINTS uc JOIN USER_CONS_COLUMNS ucc 
ON uc.CONSTRAINT_NAME = ucc.CONSTRAINT_NAME 
AND uc.TABLE_NAME=ucc.TABLE_NAME 
WHERE uc.TABLE_NAME='mytablename'; 

制約定義と呼ぶことができます:あなたは、私は詳細を与える「学生 でSHOW INDEX」のようないくつかのクエリを探していますhere

+0

非常に灰色..ありがとう..それは働いた:) – rohit

1

あなたはそれはあなたがキャップにSTUDENTを渡していることを確認してくださいuser_constraints

SELECT * 
FROM user_constraints 
WHERE table_name = 'STUDENT' 

から得ることができます。

C (check constraint on a table) 
P (primary key) 
U (unique key) 
R (referential integrity) 
V (with check option, on a view) 
O (with read only, on a view) 
+0

こんにちはPrdp、あなたの返信をありがとう..ありがとう、私はあなたが何かを説明することができますuser_constraintsです。それはキーワードですか? このコードは機能していないか、正しく使用できません。 – rohit

+0

@rohit - 現在のユーザーが所有するテーブルの制約の定義を示すように見えます。 –

+0

@rohit - STUDENTを大文字で渡してください。テーブル名は大文字と小文字が区別されます –

0

は、このビューのクエリを試してみて、すべての制約の詳細を得るためにあなたのテーブル名を指定します。table_nameが制約タイプのチェックに制約定義のこのコラムCONSTRAINT_TYPE

タイプを知るためにケース

敏感です。

SELECT * FROM user_cons_columns WHERE table_name = '<YOUR_TABLE_NAME>';

それとも

SELECT * FROM user_constraints WHERE table_name = '<your table name>' AND constraint_name = '<your constraint name>';

+0

こんにちはAshwinP、あなたの返事をありがとう。両方の方法で、 "NO ROWS SELECTED"を表示しています – rohit

+0

テーブル名と制約名を大文字で入れましたか? –

+0

はい大文字で試してください –

0

だけdescribe

describe student を使用していますが、次の2つのテーブルの上に、JOINを使用することができ、それ

+0

こんにちはKartik、あなたの返信をありがとうが、それはNULL制約のみを表示しています。親切なことに、UNIQUE KEY、PRIMARY KEYなどのような他の制約の詳細を取得する方法を教えてください。 – rohit

+0

私が触れたようにRohit 'describe'からSQLコマンドラインを使用している場合、 Webブラウザモードの場合は、 'describe'を使用してすべての制約を見ることができます –

+0

こんにちはゴルディー、あなたの返事をありがとうございます。しかし、コマンドプロンプトで同じことをする必要があります。親切に私を助けてください。 – rohit

関連する問題