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

Développement SQL Server Discussion :

Problème d'insertion ensembliste


Sujet :

Développement SQL Server

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre expérimenté
    Avatar de Kropernic
    Homme Profil pro
    Analyste / Programmeur / DBA
    Inscrit en
    Juillet 2006
    Messages
    3 932
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Analyste / Programmeur / DBA
    Secteur : Distribution

    Informations forums :
    Inscription : Juillet 2006
    Messages : 3 932
    Par défaut Problème d'insertion ensembliste
    Hello,

    Je crois que j'ai le cerveau grillé car ce problème m'a l'air d'être quelque chose d'assez courant à faire et pourtant, je sèche totalement...

    J'ai les tables suivantes :
    Nom : MLD.png
Affichages : 226
Taille : 46,6 Ko

    J'ai aussi, tiré d'une vieille DB (pas forcément normalisée), un historique, qui a été importé dans une table "temporaire" (c'est une vraie table mais elle sera supprimée dès l'importation dans les tables définitives réussie), avec lequel je voudrais peupler les tables dont les suffixes sont CRD, OCN et EMC.

    Un peu d'explication...

    Il s'agit d'une DB dont le but est de gérer des numéros de cartes de membre du personnel. La table terminant par EMP contient la liste du personnel actif et pensionné mais cette liste ne remonte que jusqu'à l'époque où nous avons changé de secrétariat social il y a 3 ans. Par contre, la vieille DB dont je tire l'historique n'était liée à rien. Du coup, j'ai TOUT dedans. La table OEM est donc là pour ça mais je ne m'en occupe pas pour le moment. Dans un premier temps, je veux uniquement peupler les tables avec le personnel actif.

    Dans la table CRD, la colonne CRD_NUMBER est une colonne calculée qui donne le numéro de série de la carte. Pour les nouvelles cartes qui seront créées, c'est ce numéro calculé qui sera utilisé. Pour les anciennes, c'est celui de la table OCN qui reste valide. Toujours dans la table CRD, la colonne CRD_YEAR donne l'année de création de la carte.

    Là où je sèche...

    Je suis conscient que je pourrais créer un curseur et itérer sur les lignes de la table temporaire dont je parle plus haut pour créer, une à une, les lignes dans les autres tables.
    Le souci c'est que j'aime les choses bien faite et que je cherche à travailler de manière ensembliste (comme il faudrait toujours le faire avec le t-sql).
    Et je ne parviens pas à, lors de l'insertion dans la table T_CARD_CRD, produire un output qui me permet de relier chaque ligne insérée à la ligne correspondante de l'historique de manière à pouvoir faire les insertions correctes dans les autres tables.

    Je suis pourtant persuadé que c'est plus ou moins trivial mais je dois avoir le cerveau grillé... Ca fait 2 jours que je sèche dessus.

    Help please .

    Merci d'avance à ceux qui auront pris la peine de lire ce message.
    Images attachées Images attachées  

Discussions similaires

  1. problème d'insertion de données
    Par Falgan dans le forum ASP
    Réponses: 2
    Dernier message: 06/04/2004, 09h29
  2. Probléme d'insertion par défault
    Par xavier62 dans le forum SQL
    Réponses: 7
    Dernier message: 28/11/2003, 13h03
  3. [Interbase 7] Problème d'insertion de données
    Par Tuscelan dans le forum InterBase
    Réponses: 12
    Dernier message: 19/11/2003, 22h58
  4. STL : std::set problème avec insert ...
    Par Big K. dans le forum MFC
    Réponses: 13
    Dernier message: 08/11/2003, 01h02
  5. Problème d'insertion avec MySQL
    Par Sonny dans le forum ASP
    Réponses: 13
    Dernier message: 28/08/2003, 13h52

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