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

PostgreSQL Discussion :

Tables temporaires hors transaction ?


Sujet :

PostgreSQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 10
    Par défaut Tables temporaires hors transaction ?
    Bonjour à tous,

    j'ai un souci avec mes tables temporaires, ou plus exactement avec mes transactions. Je m'explique.

    J'ai un traitement (une procédure stockée) qui est susceptible de générer une exception si un ensemble de données est non-vide. Jusque là tout va bien.

    Le problème est que mes utilisateurs aimeraient bien "voir" le contenu de cet ensemble de données s'il est non vide. Impossible de le sauver dans une table temporaire, car celle-ci est bien sûr rollbacked au moment où l'exception est déclenchée.

    J'ai bien sûr la solution de regénérer cet ensemble de données après, mais cela est couteux en temps (gros traitement).

    Existe-t'il donc un moyen de stocker un ensemble de données de façon non transactionnelle (hors transaction) ?

    Merci pour votre aide :-)

  2. #2
    Expert confirmé
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Par défaut
    Bonjour,

    es-tu obligé de faire un rollback dans ta procédure stockée ?
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 10
    Par défaut
    euh... oui, je suis obligé. Je suis tributaire de code existant, d'applications clientes existantes, et d'une transaction relativement complexe où bcp de traitements sont faits.

    Je ne peux pas recoder toutes ces applications malheureusement :-)

  4. #4
    Expert confirmé
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Par défaut
    La seule solution "simple" que je vois, serait de placer ces enregistrements dans une table temporaire, et de les stocker sur fichier avec un COPY TO. Puis, dans une autre procédure, de les recharger dans une table temporaire avec un COPY FROM.
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 10
    Par défaut
    Pour l'instant, c'est la seule "solution" que je vois aussi, car il ne semble pas possible de créer des tables "unlogged" avec PostgreSQL.

    Par contre, le COPY FROM et COPY TO ne sont utilisables que par les superusers lorsque ces commandes font référence à des noms de fichiers.

    Zut alors ! ;-)

  6. #6
    Expert confirmé
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 55

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Par défaut
    ...ou alors une fonction d'extension écrite en C.
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

Discussions similaires

  1. [Global temporary]Transaction sur table temporaire
    Par tanatiel dans le forum Oracle
    Réponses: 9
    Dernier message: 12/10/2005, 16h38
  2. Table temporaire et résultat requête
    Par Royd938 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 27/07/2004, 14h24
  3. Suppression table temporaire...
    Par Royd938 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 27/07/2004, 12h00
  4. [procédure stockée] table temporaire commençant par #???
    Par franculo_caoulene dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 23/04/2004, 12h23
  5. Nettoyage de table temporaire
    Par Alain Dionne dans le forum Bases de données
    Réponses: 5
    Dernier message: 28/02/2004, 20h44

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