Auto incrementation SQL Server

Résolu
js8bleu Messages postés 624 Statut Membre -  
 fati -
Bonjour,

j'ai des problèmes pour utiliser le champ numimpdossier de la table tableimpdossier comme autoincrement. Pour le besoin d'impression, j'ai créé une table tableimpdossier dans laquelle je transfert les données à imprimer à partir de la table tablevaldossier. Pour ce faire voici la structure de mes tables

tableimpdossier
numimpdossier(numeroauto)
iddossier
numdossier
datedossier
numpatient
=>5 champs

tablevaldossier
iddossier
numdossier
datedossier
numpatient
=>4 champs

et mes requêtes

SET IDENTITY_INSERT tableimpdossier ON;

INSERT INTO tableimpdossier (numimpdossier,iddossier,numdossier,datedossier)
SELECT tablevaldossier (iddossier,numdossier,datedossier)

SET IDENTITY_INSERT tableimpdossier OFF;


Mais ça ne marche pas car il me dit que le nombre de champs de tablevaldossier est inférieur à celui de tableimpdossier.

Pouvez-vous m'aider s'il vous plaît?

Merci d'avance et Bonne Année 2011.

Cordialement.

4 réponses

  1. HostOfSeraphim Messages postés 7340 Statut Contributeur 1 609
     
    C'est normal : tu veux remplir 4 champs en indiquant 3 champs, le serveur ne sait pas quoi faire du 4e champ.

    Retire "numimpdossier" de la liste, le serveur en déduiera qu'il faut l'incrémenter et ça passera.

    2
  2. HostOfSeraphim Messages postés 7340 Statut Contributeur 1 609
     
    SET IDENTITY_INSERT semble servir à "forcer" une insertion (notamment pour insérer un enregistrement avec un ID à X quand ID est un auto_increment actuellement à Y).

    Retire ces deux instructions, ne garde que l'INSERT INTO / SELECT, ça devrait être bon.

    1
  3. js8bleu Messages postés 624 Statut Membre 4
     
    Bonne Année 2011, bonjour et Merci HostOfSeraphim pour ton aide. J'ai retiré numimpdossier et lorsque j'ai exécuté la requête il m'a affiché l'erreur suivante :

    Une valeur explicite doit être spécifiée dans la colonne identité de la table 'TImpDossier' quand IDENTITY_INSERT est défini à ON.


    Sais-tu comment puis-je faire pour régler le problème s'il te plaît?

    Je sens que je ne suis pas loin de la libération.

    Merci d'avance.

    Cordialement.
    0
  4. js8bleu Messages postés 624 Statut Membre 4
     
    Yessssssssssssssss! C'est trop cool ça marche parfaitement. Merci beaucoup et prends bien soin de toi.

    Cordialement.
    0
    1. fati
       
      Bonjour,

      J'ai le même problème,
      Comment avez-vous résolu cette erreur?

      Merci
      0