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 :

ordre des lignes dans sql server


Sujet :

Langage SQL

  1. #1
    Membre averti
    Homme Profil pro
    Freelance
    Inscrit en
    Février 2008
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 312
    Points : 390
    Points
    390
    Par défaut ordre des lignes dans sql server
    bonjour à tous
    j'ai une application en vb.net lié a une base sql server
    mon application se sert de cette base pour générer un menu automatiquement en fonction de l'utilisateur connecté (lui aussi enregistré dans la base)
    certains utilisateur ont possibilité de modifier la base via des formulaires
    mon probleme vient lorsque l'utilisateur veut ajouter un menu
    en effet pour générer le menu mon programme fait une sélection des lignes à charger puis les charge dans ma barre de menu de la première a la dernière
    mais lorsque l'utilisateur ajoute un menu ou sous-menus il se met automatiquement en derniere position alors que j'aimerai qu'il s'insere a une position souhaité( via un champ position qu'il a a remplir), en quelque sorte un order by sur la base elle même
    savez vous comment je peut faire cela?
    merci d'avance pour vos réponses

  2. #2
    Membre émérite Avatar de pacmann
    Homme Profil pro
    Consulté Oracle
    Inscrit en
    Juin 2004
    Messages
    1 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Consulté Oracle
    Secteur : Distribution

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 626
    Points : 2 845
    Points
    2 845
    Par défaut
    Salut !

    Tu n'as aucun contrôle sur l'ordre "intrinsèque" dans lequel tes enregistrements sont stockés, ni sur l'ordre dans lequel ils te sont retournés sans ORDER BY.

    Pour le stockage, le SGBD peut faire pleins d'opérations physiques. Sujet certes passionant, mais qui ne doit pas influencer ta manière d'écrire tes requêtes (c'est le principe du SQL).

    Et même après cela, lors de la requête, l'ordre de retour des lignes peut dépendre de pleins d'autres paramètres (genre organisation des indexes).

    Donc solution : créer vraiment ta fameuse colonne qui définit un ordre !
    (Ok, la gestion des insertions peut être un peu barbare, mais il suffit de bien réfléchir...)

    (c'est ma photo)
    Paku, Paku !
    Pour les jeunes incultes : non, je ne suis pas un pokémon...

    Le pacblog : http://pacmann.over-blog.com/

  3. #3
    Membre averti
    Homme Profil pro
    Freelance
    Inscrit en
    Février 2008
    Messages
    312
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 312
    Points : 390
    Points
    390
    Par défaut
    merci de ta réponse
    tu as surement raison
    ce que j'ai fait c'est rajouter une colonne position dans mes différentes tables de menus
    et lorsque je fait ma requête dans mon programme pour la charger dans un dataset, je trie ce dataset par le numéro position. De ce fait mes menus s'ajoute en fonction de leur position.
    C'est simplement que je croyais qu'on pouvait affecter un ordre précis au ligne dans un sgbd, je ne voyai pas les données ordonnées de façon si anarchique
    en tout cas merci de ta réponse
    problème résolu

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 842
    Points : 52 940
    Points
    52 940
    Billets dans le blog
    5
    Par défaut
    Une table est par nature ensembliste. Un ensemble de données c'est comme un sac de bille. La question :
    Quelle est la première bille dans le sac ?
    N'a donc aucun sens !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. gestion des droits dans sql Server 2008
    Par batou22003 dans le forum Administration
    Réponses: 2
    Dernier message: 09/07/2010, 09h07
  2. apport des vues dans sql server ?
    Par hbib85 dans le forum Optimisations
    Réponses: 2
    Dernier message: 25/03/2009, 22h13
  3. [RegEx] Changer ordre des lignes avec SQL et PHP
    Par kifouillou dans le forum Langage
    Réponses: 16
    Dernier message: 20/03/2008, 16h27
  4. l'ordre des lignes dans un Select
    Par comment_ca dans le forum Oracle
    Réponses: 15
    Dernier message: 05/10/2006, 11h08
  5. Importer des données dans sql server avec DELPHI ???
    Par moutanakid dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 11/08/2004, 17h22

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