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 :

forcer un numero auto


Sujet :

MS SQL Server

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    381
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : Maroc

    Informations forums :
    Inscription : Novembre 2007
    Messages : 381
    Points : 180
    Points
    180
    Par défaut forcer un numero auto
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    sql="select top 1 num_adherent  from souscription order by num_adherent desc"
    		set rs=server.CreateObject("ADODB.RECORDSET")
    		rs.open sql,conn
    		if not rs.eof then
    		nouveau_adherent=Formatnumber(rs("num_adherent"),0)+1
    		else
    		nouveau_adherent=410000001
    		end if
    Le numéro d'adhérent est un numéro auto qui commence de 410000001 et incrémente par 1, mon soucis c'est que si je supprime un adhérent, le dernier par exemple, supposant que c'est le numéro 15 quand je vais faire ma requete il va me donner le top 1 c'est 14, alors le résultat qui va s'afficher est 15 mais le numéro auto va passer directement sur 16 parce que le 15 est déjà supprimé.
    Est ce qu'on peut forcer le numéro auto a prendre toujours le dernier numéro +1?
    j'utilise SQL SERVER 2000.
    Merci D'avance.

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    126
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 126
    Points : 143
    Points
    143
    Par défaut
    Est ce qu'on peut forcer le numéro auto a prendre toujours le dernier numéro +1?
    oui, utilises les clauses SET IDENTITY_INSERT ma_table ON avant ton insert. il te faudra également utiliser l'agregat MAX sur ta colonne identity pour déterminer le dernier numéro alloué.

    Cela dit vu ta problématique, il me semblerait plus judicieux d'utiliser une colonne de type DATETIME pour déterminer le dernier inséré.

Discussions similaires

  1. Numero auto
    Par Invité dans le forum Access
    Réponses: 6
    Dernier message: 30/12/2005, 23h04
  2. [Jdbc] insertion avec numero auto
    Par ice69 dans le forum JDBC
    Réponses: 2
    Dernier message: 31/10/2005, 19h19
  3. [ASP][BASE DE DONNEES ACCESS] pb champ numero auto
    Par lemaxou64 dans le forum ASP
    Réponses: 2
    Dernier message: 20/07/2005, 17h09
  4. probleme de type numero auto
    Par unix27 dans le forum ASP
    Réponses: 4
    Dernier message: 25/11/2004, 11h53
  5. generer un numero auto a chaque insertion
    Par julio84 dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 15/07/2003, 12h22

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