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

MS SQL Server Discussion :

Table temporaire et classement


Sujet :

MS SQL Server

  1. #1
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 450
    Points : 3 086
    Points
    3 086
    Par défaut Table temporaire et classement
    Bonjour

    J'utilise une base SQL Server 2008. Dans cette base, il y a beaucoup de procédures stockées qui utilisent des tables temporaires créées par l'instruction CREATE TABLE. Apparemment, cette instruction utilise un classement différent de la base en cours d'utilisation.
    Voir ici !
    Ce comportement pose des problèmes lors de l'utilisation des procédures dans les traitements.
    L'idée indiquée par ce post est intéressante mais dans mon cas, demanderait énormément de travail pour reprendre toutes les procédures de cette façon.

    Auriez-vous une idée d'une solution plus rapide qui m'éviterait de recomposer 200 procédures ?

    Papy !
    J-L aka Papy pour les amis

  2. #2
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Je trouve le SELECT INTO généralement assez cochon

    Cela étant, vous avez le choix entre la solution de ce billet et utiliser COLLATE database_default ...

    il y a beaucoup de procédures stockées qui utilisent des tables temporaires
    Le véritable problème est là. Avec un modèle de données correct, il y a très rarement besoin d'utiliser des tables temporaires.

    @++

  3. #3
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 450
    Points : 3 086
    Points
    3 086
    Par défaut
    Bonjour Nicolas,

    En fait, la base est celle du client et je dois m'adapter. Je n'ai pas le choix.

    Le "COLLATE database_default" , il faut l'ajouter à chaque création de table ?
    (J'avoue humblement ne pas avoir terminé l'étude du gros pavé SQL Server que j'ai acheté )
    J-L aka Papy pour les amis

  4. #4
    Membre expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2007
    Messages
    3 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Novembre 2007
    Messages : 3 450
    Points : 3 086
    Points
    3 086
    Par défaut
    Citation Envoyé par Papy214 Voir le message
    Bonjour Nicolas,

    En fait, la base est celle du client et je dois m'adapter. Je n'ai pas le choix.

    Le "COLLATE database_default" , il faut l'ajouter à chaque création de table ?
    (J'avoue humblement ne pas avoir terminé l'étude du gros pavé SQL Server que j'ai acheté )
    ...

    Pour colonne de type texte ou assimilé . OK

    Après étude approfondie, il n'y a pas tant de modifs que ça à faire

    Merci
    J-L aka Papy pour les amis

  5. #5
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    En fait, la base est celle du client et je dois m'adapter. Je n'ai pas le choix.
    OK, je comprends.

    Pour colonne de type texte ou assimilé . OK

    Après étude approfondie, il n'y a pas tant de modifs que ça à faire
    Tant mieux ! Effectivement toutes les colonnes dont le type permet de stocker du texte doivent être suivies de cette clause ...

    D'où le soin qu'il faut apporter au choix de la collation :
    - pour l'instance SQL Server que l'on installe
    - pour la base de données, le mieux étant qu'elle soit identique à celle de l'instance
    - pour les tables ou colonnes, mais cela peut dépendre du besoin

    @++

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

Discussions similaires

  1. Table temporaire
    Par Tapioca dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 29/07/2004, 11h32
  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