Précédent   Forum des professionnels en informatique > Bases de données > PostgreSQL
PostgreSQL Forum PostgreSQL. Avant de poster -> F.A.Q PostGreSQL Tutoriels PostGreSQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/05/2008, 17h56   #1
Membre habitué
 
Inscription : janvier 2007
Messages : 465
Détails du profil
Informations personnelles :
Localisation : France, Bas Rhin (Alsace)

Informations forums :
Inscription : janvier 2007
Messages : 465
Points : 118
Points : 118
Par défaut Gérer les enregistrements dans PostgreSQL

Bonjour,
J'ai une Base de Données PostgreSQL. Dans une table, j'ai une clé primaire de type "double". J'ajoute des tuples dont la clé primaire doit suivre un ordre particulier :exemple :
6
3
5
2
....
Mais par défaut PostgreSQL organise les tuples d'une manière croissante : exemple:
2
3
5
6
Cela nuit à mes traitements. J'ai changé le type de données de double à une chaine de caractère, mais j'ai toujours le même problème.
Ma question : comment forcer PostgreSQL à suivre un ordre particulier pour les enregistrements de la Base de Données (de telle façon quils ne soient pas croissants)?
Merci.
choko83 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/05/2008, 18h24   #2
Invité2
Invité(e)
 
Messages : n/a
Détails du profil
Informations forums :
Messages : n/a
Points : 0
ajouter un champ au début que tu nomme id et qui est l'index de ta table...
  Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2008, 09h49   #3
Membre habitué
 
Inscription : janvier 2007
Messages : 465
Détails du profil
Informations personnelles :
Localisation : France, Bas Rhin (Alsace)

Informations forums :
Inscription : janvier 2007
Messages : 465
Points : 118
Points : 118
Citation:
Envoyé par katagoto Voir le message
ajouter un champ au début que tu nomme id et qui est l'index de ta table...
Mais ma table est déja indexée avec l'OID (Object Identifier).
choko83 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2008, 14h24   #4
say
Membre Expert
 
Avatar de say
 
Inscription : août 2002
Messages : 1 175
Détails du profil
Informations personnelles :
Âge : 34

Informations forums :
Inscription : août 2002
Messages : 1 175
Points : 1 135
Points : 1 135
Envoyer un message via MSN à say
l'oid n'intervient pas ici. si tu veux forcer un ordre, il faut que tu le prévois.

cela étant, la notion d'ordre d'enregistrement n'existe pas intrinséquement.
C'est lors de ta requête que tu vas appliquer un ordre (order by )
__________________
Ils ne savaient pas que c'était impossible alors ils l'ont fait (Mark Twain)
_ _ _ _ _ _ _ _ _

La planète ne nous appartient pas, elle nous a été prêtée par nos enfants
_ _ _ _ _ _ _ _ _

Technos : Access, C++ Builder, SQL, PostgreSQL, Crystal Reports, XML entre autres
say est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/05/2008, 15h48   #5
Membre Expert
 
Avatar de scheu
 
Inscription : juin 2007
Messages : 1 497
Détails du profil
Informations forums :
Inscription : juin 2007
Messages : 1 497
Points : 1 485
Points : 1 485
Une table n'est jamais triée, il faut toujours utiliser la clause ORDER BY si tu veux la trier
Une table est comme un sac de billes, quand tu y insères des billes, ce n'est pas forcément la première insérée que tu tireras en premier
__________________
La théorie, c'est quand on sait tout mais que rien ne fonctionne.
La pratique, c'est quand tout fonctionne mais que personne ne sait pourquoi.
Ici, nous avons réuni théorie et pratique : Rien ne fonctionne ... et personne ne sait pourquoi !

Réplication de base avec Postgresql : http://scheu.developpez.com/tutoriel.../log-shipping/
scheu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/05/2008, 15h22   #6
Membre habitué
 
Inscription : janvier 2007
Messages : 465
Détails du profil
Informations personnelles :
Localisation : France, Bas Rhin (Alsace)

Informations forums :
Inscription : janvier 2007
Messages : 465
Points : 118
Points : 118
J'ai utilisé la clause order by et sa marche.
choko83 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h31.


 
 
 
 
Partenaires

Hébergement Web