IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Oracle Discussion :

Contrainte Check en SQL


Sujet :

SQL Oracle

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2015
    Messages : 12
    Points : 9
    Points
    9
    Par défaut Contrainte Check en SQL
    J'ai la même question que dans cette discussion et je bloque. Car si je fais CREATE ASSERTION, j'ai un joli ORA-00901: invalid CREATE command.

    De plus, dans la doc d'Oracle je lis
    " Restrictions on Check Constraints
    The condition of a check constraint can refer to any column in the table, but it cannot refer to columns of other tables."
    Ainsi que certaines personnes, disent que dans Oracle il n'y a pas de CREATE ASSERTION et comme les profs du cnam ne semblent pas avoir envie de répondre à la moindre question... je n’ai pas la moindre idée comment résoudre cette question vu que j'ai des infos contradictoires.

    Merci

  2. #2
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 778
    Points
    30 778
    Par défaut
    Citation Envoyé par SigmaPi Voir le message
    Ainsi que certaines personnes, disent que dans Oracle il n'y a pas de CREATE ASSERTION et comme les profs du cnam ne semblent pas avoir envie de répondre à la moindre question... je n’ai pas la moindre idée comment résoudre cette question vu que j'ai des infos contradictoires.
    Tu fais toi même référence à la documentation d'Oracle dans laquelle n'apparait aucune commande CREATE ASSERTION... Comme souvent la réponse est dans la documentation.
    Quant à la manière de résoudre ta question, elle passera sans doute par un trigger.
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  3. #3
    Membre émérite
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Avril 2013
    Messages
    1 992
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 1 992
    Points : 2 498
    Points
    2 498
    Par défaut
    Comme le dit al1_24, pas de CREATE ASSERTION avec Oracle. C'est dommage car, d'après la norme SQL, ça permet de créer des supers contraintes d'intégrité en utilisant des colonnes de plusieurs tables.
    Pas grave cependant, on contourne le pb avec des triggers :-)
    Mais pour ça, il va falloir programmer en PL/SQL et ce n'est pas toujours hyper simple; d'un autre côté, utiliser Oracle sans faire de PL/SQL... ==> tu vas gagner en compétence si tu n'as pas encore touché à cet outil.
    DBA Oracle
    Rédacteur du blog : dbaoraclesql.canalblog.com

  4. #4
    Expert confirmé
    Profil pro
    Inscrit en
    Août 2008
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2008
    Messages : 2 947
    Points : 5 846
    Points
    5 846
    Par défaut
    Attention avec le développement de trigger pour gérer des contraintes, ce n'est pas simple.
    https://asktom.oracle.com/pls/apex/f...42800346504246

Discussions similaires

  1. [SQL SERVER 2008 R2] Contrainte CHECK
    Par nadjibnet dans le forum MS SQL Server
    Réponses: 15
    Dernier message: 05/01/2011, 01h05
  2. [AC-2007] sql INSERT contre contrainte CHECK
    Par alassanediakite dans le forum VBA Access
    Réponses: 5
    Dernier message: 30/11/2009, 16h50
  3. Contrainte Check en SQL
    Par Identifiant dans le forum Langage SQL
    Réponses: 1
    Dernier message: 03/02/2008, 18h37
  4. [SQL Server 2000] Contrainte Check et exception générée
    Par Greldinard dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 01/09/2006, 13h36
  5. [SQL Server 2000] Contrainte check
    Par batosai dans le forum Langage SQL
    Réponses: 3
    Dernier message: 24/04/2006, 17h16

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo