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

PHP & Base de données Discussion :

SQL oracle avec "select in"


Sujet :

PHP & Base de données

  1. #1
    Membre régulier
    Inscrit en
    Novembre 2004
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 138
    Points : 70
    Points
    70
    Par défaut SQL oracle avec "select in"
    Bonjour,

    voici un exemple :
    table1 (rub1,rub2,rub3)
    A1| 1|E1
    A2| 2|E2
    A3| 3|E3
    B1| 4|A1
    B2| 5|A2
    B3| 6|B3

    select rub1,rub2,rub3 from table1 where rub3 in (select rub1 from table1)

    résultat désiré

    B1| 4|A1
    B2| 5|A2
    B3| 6|B3

    En sql --> aucun pb

    En sql via php/odbc

    j'ai le message suivant :
    Warning: odbc_exec() [function.odbc-exec]: SQL error: [Microsoft][ODBC driver for Oracle]Impossible d'utiliser le curseur de table de caractères sur join, avec une clause distincte union, intersection ou moins ou sur une série de résultats en lecture seule, SQL state S1C00 in SQLExecDirect
    par avance merci

  2. #2
    Membre régulier
    Inscrit en
    Novembre 2004
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 138
    Points : 70
    Points
    70
    Par défaut
    Ne pouvant le faire d'un coté, je pensais le faire de l'autre mais ...

    meme resultat

    C'est a dire que dans ma base oracle, j'ai créé une vue me permettant de faire ma requete

    --> qq'un a t-il une idée??

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 280
    Points : 344
    Points
    344
    Par défaut
    Salut,

    Apriori la table est ouverte avec un lock ?
    En essayant ca peut etre que ca marchera ? :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    WITH 
      FLT_RB3 AS (SELECT rub3 AS DATA FROM TABLE1 INTERSECT SELECT rub1 AS DATA FROM TABLE1)
    SELECT RUB1,RUB2,RUB3 FROM table1 WHERE rub3 IN (SELECT DATA FROM FLT_RB3)
    ---
    Farid

  4. #4
    Membre régulier
    Inscrit en
    Novembre 2004
    Messages
    138
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 138
    Points : 70
    Points
    70
    Par défaut
    Bonjour,

    en utilisant :

    INTERSECT

    --> idem

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    280
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 280
    Points : 344
    Points
    344
    Par défaut
    salut,

    Apriori un soucis de config de ta connection sous php.

    je n'utilise ni php ni odbc, seulement du java +jdbc pour attaquer oracle, mais si tu regardes le lien suivant, dans un des commentaires un utilisateur a eu le meme message d'erreur, et une solution lui a ete donne:

    http://php.oregonstate.edu/manual/en...bc-connect.php

    ---
    Farid

Discussions similaires

  1. Réponses: 1
    Dernier message: 14/05/2007, 21h36
  2. [My SQL]probleme avec insert select
    Par jmjmjm dans le forum Langage SQL
    Réponses: 2
    Dernier message: 27/01/2007, 11h24
  3. Generer du xml via SQL(oracle) avec de l'asp
    Par jpg dans le forum XQUERY/SGBD
    Réponses: 6
    Dernier message: 03/08/2004, 12h36

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