Bonjour, j'essaie d'afficher les contraintes dans l'une de mes tables, mais pour une raison quelconque, je reçois le message qu'aucune lignée n'a été sélectionnée. Mentionné ci-dessous est le tableau que j'ai créé.
SELECT constraint_name, constraint_type, search_condition FROM USER_CONSTRAINTS WHERE table_name = 'Teams';
6 Réponses :
Essayez ceci:
SELECT constraint_name, constraint_type, search_condition FROM USER_CONSTRAINTS WHERE table_name = 'TEAMS';
Si vous préférez les noms CAMELCASE, votre script de table Create devrait avoir été:
Create table "Teams" ( "TeamID" varCHAR2(4) constraint "Teams_TeamID_PK" Primary Key, "TeamName" VARCHAR2(40) );
select dbms_mview.get_ddl('TABLE',USER,'TEAMS') from dual;
Utilisez le code suivant:
show create table table_name;
Travaillera dans MySQL mais pas dans MS SQL Server et Oracle.
J'utilise personnellement:
SELECT * FROM all_constraints WHERE Table_Name = <TableName>;
Tapez le nom de la table en majuscule dans E.g. où code> clause dans les guillemets simples. P>
où table_name = 'équipes'; code> p>
Les mots-clés SQL sont insensibles à l'affaire: Stackoverflow.com/Questions/ 153944 / IST-SQL-SYNTAX-CASE-SENSIT IVE
Votre problème me frappe car vous effectuez ces actions comme des utilisateurs différents et / ou ne vous engagez pas la transaction lorsque vous créez la table.
Créer une table est DDL que les autocommensis lors de l'exécution à Oracle.
Vous ne pouvez pas laisser tomber une table référencée par d'autres tables, à moins que vous spécifiez "contraintes de cascade", c'est-à-dire "" Drop Table équipes de cascade contraintes ""