|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 3 ![]() |
Bonjour
Je suis sur le développement d'un logiciel fonctionnant avec PostGre 8.2 fonctionnant sur Windows XP, Ce logiciel doit pouvoir comparer une base de données PostGreSQL avec une base Oracle ou MS SQL (Comparaison des clés primaires, des indexes, des données). Sur PostGre, je n'arrive pas à déterminer l'ordre de tri des indexes (si ils sont ascendants ou descendants). Connaissez vous la requête qui pourrait me l'indiquer? Merci. (Edit, je voudrais aussi déterminé s'ils sont partitionnés) |
|
|
00
|
|
|
#2 | |
|
Expert Confirmé
![]() Inscription : septembre 2006 Messages : 2 291 ![]() |
Citation:
pg_catalog.pg_am http://www.postgresql.org/docs/7.4/s...log-pg-am.html |
|
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 3 ![]() |
L'ennui c'est que pour obtenir l'identifiant pour pg_am, faut utiliser un id dans pg_proc qui s'obtient avec un autre oid. Mais dans pg_index, le seul identifiant pour pg_proc se trouve dans un oidvector, et je ne sais comment obtenir les oid dans le vector. (si j'ai bien compris, je suis nouveau sur PostGreSQL)
Par contre pour le partitionnement, je n'ai toujours pas trouvé. |
|
|
00
|
|
|
#4 | |
|
Expert Confirmé
![]() Inscription : septembre 2006 Messages : 2 291 ![]() |
Citation:
c'est assez simple à scanner dans n'importe quel langage… en php explode() en ruby split() en Objective-C componentsSeparatedByString: en C sscanf dans une boucle… etc. Le partitionnement étant défini au niveau des tables via le mécanisme d'inhéritance : c'est à ce niveau-là que vous regarderez… Il n'y a pas de partitionnement des index à proprement dit, les index peuvent être utiles pour optimiser l'accès en optimisant les requêtes sur les contraintes qui "partitionnent" la table… Le partitionnement en PostgreSQL se fait de manière non explicite mais en combinant différentes fonctionnalités, il ne sera pas simple de déterminer à coup sûr que l'on est face à un partitionnement décidé par le concepteur en examinant les tables systèmes… détecter que plusieurs tables descendent de la même table est simple, détecter qu'un même champ hérité fait l'objet de contraintes différentes dans chaque table fille l'est déjà un peu moins, détecter que ces contraintes n'ont pas d'intersection logique et couvrent tout l'espace des valeurs possibles est encore un peu plus compliqué… |
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : février 2007 Messages : 3 ![]() |
D'accord merci beaucoup.
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com