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

JDBC Java Discussion :

[ORACLE] Problème avec un ALTER TABLE générique


Sujet :

JDBC Java

  1. #1
    Membre habitué Avatar de domiq44
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 301
    Points : 135
    Points
    135
    Par défaut [ORACLE] Problème avec un ALTER TABLE générique
    Bonjour,

    J'ai un souci avec la requête suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    PreparedStatement ps = con.prepareStatement("ALTER TABLE ? MOVE LOB (?) STORE AS ?");
    ps.setString(1, tableName);      // 'ma_table'
    ps.setString(2, columnName);     // 'mon_clob'
    ps.setString(3, segmentName);    // 'sys_lob0000105617c00012$$'
    int rows = ps.executeUpdate();
    ps.close();
    qui me renvoit systématiquement le message suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ORA-00903: nom de table non valide
    Alors que la requête équivalente suivante fonctionne :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER TABLE ma_table MOVE LOB (mon_clob) STORE AS sys_lob0000105617c00012$$;
    Quelqu'un peut-il m'aider ?
    Merci

  2. #2
    Modérateur
    Avatar de OButterlin
    Homme Profil pro
    Inscrit en
    Novembre 2006
    Messages
    7 313
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 7 313
    Points : 9 529
    Points
    9 529
    Billets dans le blog
    1
    Par défaut
    Le nom de la table n'a pas été prévu pour être un paramètre...

  3. #3
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 084
    Points
    7 084
    Par défaut
    Oui les paramètres ce sont pour les valeurs, pas pour les autres éléments comme les noms, les alias, les mots clés, etc.

  4. #4
    Membre habitué Avatar de domiq44
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 301
    Points : 135
    Points
    135
    Par défaut
    Merci pour vos réponses

    Il n'y a donc aucun moyen de rendre ça paramétrable

    Je vais donc créer autant de requêtes que de tables

  5. #5
    Membre habitué Avatar de domiq44
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 301
    Points : 135
    Points
    135
    Par défaut
    Pour le nom de la colonne et le nom du segment, c'est la même chose ?

  6. #6
    Rédacteur/Modérateur
    Avatar de Logan Mauzaize
    Homme Profil pro
    Architecte technique
    Inscrit en
    Août 2005
    Messages
    2 894
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Architecte technique
    Secteur : Transports

    Informations forums :
    Inscription : Août 2005
    Messages : 2 894
    Points : 7 084
    Points
    7 084
    Par défaut
    Jamais essayer, pour ce genre de choses je vois pas l'intérêt d'utiliser des paramètres.
    Autant construire la chaîne de caractère directement, quitte à vérifier que les parties dynamiques respectent une expression régulière pour éviter que ça parte en carafe.

  7. #7
    Membre habitué Avatar de domiq44
    Homme Profil pro
    Inscrit en
    Novembre 2005
    Messages
    301
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2005
    Messages : 301
    Points : 135
    Points
    135
    Par défaut
    Oui, c'est exactement ce que je suis en train d'essayer.
    Je confirme aussi que ça fonctionne

    L'autre problème auquel je suis maintenant confronté est qu'il existe dans ma base des tables partitionnées.
    Et là, c'est une autre paire de maches ....

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

Discussions similaires

  1. problème avec un alter table suivi d'un update immédiat
    Par jmclej dans le forum Adaptive Server Enterprise
    Réponses: 3
    Dernier message: 11/06/2010, 21h44
  2. Problème avec mon alter table
    Par gibea00 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 08/08/2007, 18h02
  3. [ORACLE]Problème avec NUMBER
    Par HexChit dans le forum Oracle
    Réponses: 2
    Dernier message: 17/10/2006, 10h56
  4. Réponses: 12
    Dernier message: 25/11/2005, 12h29
  5. [Oracle] problème avec INNER JOIN
    Par Philofish dans le forum Langage SQL
    Réponses: 5
    Dernier message: 15/09/2005, 10h20

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