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 :

Problème insertion dernière ligne


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif Avatar de Aizen64
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    565
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 565
    Par défaut Problème insertion dernière ligne
    Bonjour,

    j'ai un petit soucis sur un ajout d'élément dans une table.

    A supposer que j'ai 30 éléments dans cette table, la clé primaire est un numéro qui s'incrémente à chaque insertion.

    Je récupère des données à la ligne 10 et ensuite je fais une insertion dans la table, qui devra avoir le numéro 31 donc.

    Tout ça fonctionne sauf que l'insertion se fait à la suite de l'indice 10 et non en bout de table, c'est pas terrible niveau lisibilité, des solutions pour insérer automatiquement en fin de table ?

  2. #2
    Modérateur
    Avatar de Chtulus
    Homme Profil pro
    Ingénieur
    Inscrit en
    Avril 2008
    Messages
    3 094
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Santé

    Informations forums :
    Inscription : Avril 2008
    Messages : 3 094
    Par défaut
    Bonjour,

    Essaie ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT MAX(ChampsPrimaryKey) + 1
             FROM Table
    -- ORDER BY ChampsPrimaryKey "mais là je suis pas sûr"
    Sinon tu as le chapitre 3 à cette adresse qui explique tout sur les clefs auto incrémenté

    http://sql.developpez.com/clefs/
    « Je ne cherche pas à connaître les réponses, je cherche à comprendre les questions. »
    - Confucius -

    Les meilleurs cours, tutoriels et Docs sur les SGBD et le SQL
    Tous les cours Office
    Solutions d'Entreprise



  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 140
    Par défaut
    Bonjour,

    Ton problème n'est pas clair, tu parles d'ordre lors de l'insertion. L'ordre n'est fournit que par la clause ORDER BY.

    Peux tu fournir ton SELECT.

  4. #4
    Membre très actif Avatar de Aizen64
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    565
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 565
    Par défaut
    J'ai réussi mais j'ai utilisé une technique un peu bizarre :

    J'ai fait un SELECT d'une donnée quelconque de la table vraiment au hasard au dernier élément de la table juste avant l'insertion.

    Par conséquent au moment de l'insertion, il a plaçé le nouvel enregistrement à la suite.

    Pour être plus clair si je reprends l'exemple que j'ai donné avant, j'ai récupéré les données à la ligne 10, ensuite j'ai sélectionné une donnée bidon sur la 30ème ligne (la dernière de la table avant l'insertion), et enfin j'ai fait l'insertion que je voulais faire.

    Forcément, la ligne suivante va être utilisée pour l'insertion.

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    140
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 140
    Par défaut
    Je suis content que tu ai résolu ton problème mais honnêtement, je ne comprends rien a ce que tu fais et ce que tu veux faire.
    Je me demande si tu ne te trompe pas sur la manière dont fonctionne un SGDD.

  6. #6
    Membre très actif Avatar de Aizen64
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    565
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 565
    Par défaut
    Je vais tenter d'être clair, voilà un exemple, avec les indices de lignes qui correspond à une clé primaire (entier) :

    1
    2
    3
    5
    6
    7
    8
    9
    10


    A supposer que je récupère des infos sur la ligne 6, et que juste après (TRIGGER) je dois insérer un enregistrement. Cet enregistrement devra avec comme clé primaire 11.

    Si je fais l'insertion directement après avoir récupéré des champs à la ligne 6, ça donnera ça dans ma table :

    1
    2
    3
    4
    5
    6
    11
    7
    8
    9
    10

    Techniquement il n'y a aucun problème après c'est une question de requête SQL sur la table, mais pour des questions de lisibilité et compte tenu que je fais certains tests, c'est plus facile que je vois ça :

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11

    Pour faire ça, juste avant d'insérer un enregistrement, je fais une requête SQL bidon sur la dernière ligne présente sur la table, dans l'exemple c'est 10 avant insertion, par conséquent, la prochaine insertion sera placée tout au bout.

    Suis-je clair ?

Discussions similaires

  1. Problème incrémentation dernière ligne
    Par hools31 dans le forum Macros et VBA Excel
    Réponses: 12
    Dernier message: 18/06/2015, 17h06
  2. [WD9] Problème dernière ligne d'un fichier csv
    Par cactus666 dans le forum WinDev
    Réponses: 5
    Dernier message: 05/10/2007, 12h49
  3. Problème d'insertion de ligne
    Par bobie dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/08/2007, 14h25
  4. [Oracle] Problème d'insertion de ligne via JDBC
    Par Invité dans le forum JDBC
    Réponses: 3
    Dernier message: 17/07/2007, 13h21
  5. Tableau avec scroll: problème avec la dernière ligne
    Par restricteur dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 24/05/2007, 14h47

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