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

Langage SQL Discussion :

Creation d'une table avec variable dans le nom


Sujet :

Langage SQL

  1. #1
    Candidat au Club
    Profil pro
    Conseil et développement dam
    Inscrit en
    Juillet 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Conseil et développement dam

    Informations forums :
    Inscription : Juillet 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut Creation d'une table avec variable dans le nom
    Bonjour,

    Mon souci est le suivant :

    J'ai fait un requete sql pour rechercher les differents clients par departement de ma table client :
    SELECT "Clients.*" INTO Client_dep
    FROM Clients
    WHERE Clients.cp Like [dep] & '???';

    cela fonctionne mais j'aimerais en réalité crée une table Client_dep[valeur de dep] et je ne sais pas si c'est possible.

    exemple je recherche le departement 54 >> Client_dep54

    D'avance merci.

  2. #2
    Membre confirmé Avatar de chrifo
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    444
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 444
    Points : 481
    Points
    481
    Par défaut
    Bonjour,
    Oui, c'est possible avec du sql dynamique (execute immediate), mais c'est une énorme erreur de conception (et je pèse mes mots) ! Pourquoi ne pas ajouter une colonne dpt à la table client ?
    Je penche, donc je suis

  3. #3
    Candidat au Club
    Profil pro
    Conseil et développement dam
    Inscrit en
    Juillet 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Conseil et développement dam

    Informations forums :
    Inscription : Juillet 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    Bonjour,

    Je ne comprends pas ta remarque !!

    Dans ma table client j'ai déjà un champs département.
    En réalité j'ai une table avec tout les clients de france et je souhaite isolé tous les client pour créer des table client par departement.

    exemple : Dans ma table clients j'ai 8 enregistrements dont 4 dans le 75 et 4 dans le 92. je souhaite donc crée deux tables clients_dep75 et clients_dep92 qui seront genrerer automatiquement aprés ma requete sql.

  4. #4
    Membre confirmé Avatar de miloux32
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 545
    Points : 565
    Points
    565
    Par défaut
    Citation Envoyé par 3vilsnake
    Bonjour,

    Je ne comprends pas ta remarque !!

    Dans ma table client j'ai déjà un champs département.
    En réalité j'ai une table avec tout les clients de france et je souhaite isolé tous les client pour créer des table client par departement.

    exemple : Dans ma table clients j'ai 8 enregistrements dont 4 dans le 75 et 4 dans le 92. je souhaite donc crée deux tables clients_dep75 et clients_dep92 qui seront genrerer automatiquement aprés ma requete sql.
    Euh si j'ai bien compris en gros tu souhaites une vue ?
    C'est pas parce que ca marche que c'est bon!!
    Pensez au bouton "Résolu"
    Je ne réponds pas en privé aux questions

  5. #5
    Candidat au Club
    Profil pro
    Conseil et développement dam
    Inscrit en
    Juillet 2007
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Conseil et développement dam

    Informations forums :
    Inscription : Juillet 2007
    Messages : 6
    Points : 2
    Points
    2
    Par défaut
    bonsoir,

    Merci de ton interet pour mon soucis.

    Donc concretement :
    J'ai une base de données très très lourdes que je souhaite decompossé en plusieurs petites tables pour gerer plus facilement les opérations sur cette table.
    table_client >>> table_client01 + table_client02 + table_client03 etc

    Donc j'ai fais une requete sql qui prend en valeur de recherche le departement j'obtient bien une nouvelle table mais je souhaiterais nomé cette table avec la valeur de recherche (exemple : recherche 01 >table_client_01
    je ne sais pas a quoi correspond exactement le terme "vue" mais j'espere avoir pu t'expliquer exactement ce que je recherche

    cordialement

  6. #6
    Membre confirmé Avatar de miloux32
    Profil pro
    Inscrit en
    Juillet 2003
    Messages
    545
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2003
    Messages : 545
    Points : 565
    Points
    565
    Par défaut
    Citation Envoyé par 3vilsnake
    bonsoir,

    Merci de ton interet pour mon soucis.

    Donc concretement :
    J'ai une base de données très très lourdes que je souhaite decompossé en plusieurs petites tables pour gerer plus facilement les opérations sur cette table.
    table_client >>> table_client01 + table_client02 + table_client03 etc

    Donc j'ai fais une requete sql qui prend en valeur de recherche le departement j'obtient bien une nouvelle table mais je souhaiterais nomé cette table avec la valeur de recherche (exemple : recherche 01 >table_client_01
    je ne sais pas a quoi correspond exactement le terme "vue" mais j'espere avoir pu t'expliquer exactement ce que je recherche

    cordialement

    c'est donc une vue .....

    regarde à CREATE VIEW sous google

    une vue est une sorte de table temporaire ou disons une sous table bref pile poil ce que tu sembles chercher.

    plus d'info ici : http://www.developpez.net/forums/arc...hp/t-5167.html
    C'est pas parce que ca marche que c'est bon!!
    Pensez au bouton "Résolu"
    Je ne réponds pas en privé aux questions

  7. #7
    Membre éprouvé Avatar de Mathusalem
    Profil pro
    IT moa
    Inscrit en
    Décembre 2003
    Messages
    1 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : IT moa

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 008
    Points : 1 067
    Points
    1 067
    Par défaut
    je fais ce genre de manip comme ça avec sybase :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    exec(' create ' + @nom + 'table ...')

  8. #8
    Membre habitué Avatar de Baquardie
    Femme Profil pro
    Administrateur de base de données
    Inscrit en
    Juillet 2003
    Messages
    267
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 45
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Alimentation

    Informations forums :
    Inscription : Juillet 2003
    Messages : 267
    Points : 144
    Points
    144
    Par défaut
    Voici ce que moi je fais......

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    declare @NomTable as varchar(15)
    declare @NoDep as char(2)
    declare @requete as varchar(1000)
     
    --Tu vas chercher le no de département avec lequel tu veux travailler
    select @NoDep = nodep from table
     
    set @NomTable = 'Client_dep' + @NoDep
     
    set @requete = 'SELECT Clients.* INTO ' + @NomTable + ' FROM Clients
    WHERE Clients.cp = ' + @NoDep
     
    exec (@requete)
    Je le fais souvent, lorsque j'ai besoin de créer une table temporaire spécifique pour un utilisateur......
    Rien n'est impossible à celui qui n'a pas à le faire
    DBA. Je travaille avec SQL-9, SQL-10

Discussions similaires

  1. [phpMyAdmin] Passer le nom d'une table en variable dans une requête avec phpMyAdmin
    Par EnRadeSurEclipse dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 0
    Dernier message: 29/09/2014, 11h49
  2. creation d'une table avec une clé primaire multiple
    Par oursquetaire dans le forum Oracle
    Réponses: 2
    Dernier message: 23/12/2005, 13h29
  3. Creation d'une table avec un TSQLQuery
    Par richard038 dans le forum Bases de données
    Réponses: 2
    Dernier message: 03/12/2005, 09h08
  4. Réponses: 4
    Dernier message: 13/10/2005, 14h44
  5. Creation d'une table avec plusieurs clés
    Par mic79 dans le forum Langage SQL
    Réponses: 6
    Dernier message: 21/06/2005, 11h17

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