sql >> データベース >  >> RDS >> Oracle

OracleSQLの表のすべての制約の名前を表示します

    データディクショナリ、具体的にはUSER_CONS_COLUMNSをクエリする必要があります 表の列と対応する制約を確認するために表示します:

    SELECT *
      FROM user_cons_columns
     WHERE table_name = '<your table name>';
    

    参考までに、(二重引用符を使用して)小文字の名前でテーブルを特別に作成した場合を除き、テーブル名はデフォルトで大文字になるため、クエリでそのようになっていることを確認してください。

    次に、制約自体の詳細を確認したい場合は、USER_CONSTRAINTSに問い合わせてください。 ビュー:

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

    テーブルがデフォルトのスキーマではないスキーマで保持されている場合は、ビューを次のように置き換える必要があります。

    all_cons_columns
    

    および

    all_constraints
    

    where句への追加:

       AND owner = '<schema owner of the table>'
    


    1. 初心者の場合、MySQLとPostgreSQLには大きな違いがありますか

    2. 修正方法「プロシージャは、タイプ「ntext / nchar/nvarchar」のパラメータ「@statement」を予期しています。」 SQLServerのエラー

    3. 1つの選択列の値を保存して、次の列に使用することは可能ですか?

    4. 計算列がSQLServerで「永続化」されているかどうかを確認する方法