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

PL/SQL Oracle Discussion :

Expression d'une contrainte via une fonction impossible ?


Sujet :

PL/SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut Expression d'une contrainte via une fonction impossible ?
    Bonjour

    Je souhaitais exprimer une contrainte sur une table via une fonction renvoyant un booléen.

    Or, quand je donne cette expression à la contrainte, j'obtiens (depuis Sql developper) le message d'erreur suivant :

    Error parsing check constraint [Nom_contrainte] : Error(s) parsing Sql
    Invalid expression near *!* in the following:
    [Package.Fonction()]*!*;
    la fonction est dans un package et est définie ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
      function IS_DEADLINE_RANKING_VALID 
        return BOOLEAN;
    Quel est le soucis ici ?

    Est il impossible d'exprimer une contrainte via une fonction ou est-ce un problème spécifique Sql Developper étranger à Oracle ?

    Je précise que je travaille avec la version 10g (donc un 'nanar' ..).

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

    Informations forums :
    Inscription : Août 2008
    Messages : 2 952
    Par défaut
    D'après la doc sur les contraintes :
    Conditions of check constraints cannot contain the following constructs:

    Subqueries and scalar subquery expressions

    Calls to the functions that are not deterministic (CURRENT_DATE, CURRENT_TIMESTAMP, DBTIMEZONE, LOCALTIMESTAMP, SESSIONTIMEZONE, SYSDATE, SYSTIMESTAMP, UID, USER, and USERENV)

    Calls to user-defined functions

    Dereferencing of REF columns (for example, using the DEREF function)

    Nested table columns or attributes

    The pseudocolumns CURRVAL, NEXTVAL, LEVEL, or ROWNUM

    Date constants that are not fully specified

  3. #3
    Inactif  
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2007
    Messages
    6 604
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet NTIC

    Informations forums :
    Inscription : Janvier 2007
    Messages : 6 604
    Par défaut
    Merci pour cette information.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Débutant] Récupérer une valeur d'une combobox via une SortedList
    Par smurfing dans le forum VB.NET
    Réponses: 1
    Dernier message: 18/03/2013, 13h32
  2. Ajouter une colonne dans une table via une requête
    Par Alien_psy dans le forum Requêtes et SQL.
    Réponses: 25
    Dernier message: 23/02/2013, 05h24
  3. Modifier le style d'une page dans une frame via une autre frame
    Par Menontona dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 08/12/2011, 18h54
  4. [AC-2003] Lier les tables d'une Base1 dans une Base3 via une Base2
    Par ted the Ors dans le forum VBA Access
    Réponses: 0
    Dernier message: 30/12/2009, 11h58
  5. Réponses: 14
    Dernier message: 10/09/2009, 19h08

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