[GeolLLibre] Re: BD

  • From: Pierre Chevalier Géologue <pierrechevaliergeol@xxxxxxx>
  • To: geolllibre@xxxxxxxxxx
  • Date: Sat, 28 Nov 2009 22:08:28 +0100

Pierre Chevalier Géologue claviota:

...
...
DROP TABLE dh_litho;
CREATE TABLE dh_litho (
   id character varying(20),
   depfrom numeric(10,2),
   depto numeric(10,2),
   codelitho varchar(4),
   codestrati varchar(4),
   description varchar(1000),
   oxidation varchar(4),
   deformation integer,
   alteration integer,
   water varchar(4)
);

On colle ça dans le premier terminal venu avec une session pgsql, et le tour est joué.
On ajoute quelques commentaires:

COMMENT ON TABLE dh_litho IS 'Drill holes or trenches geological descriptions';
COMMENT ON COLUMN dh_litho.id IS 'Identifier, refers to dh_collars;'
COMMENT ON COLUMN dh_litho.depfrom       IS 'Interval beginning depth';
COMMENT ON COLUMN dh_litho.depto         IS 'Interval ending depth';
COMMENT ON COLUMN dh_litho.codelitho IS 'Lithology code, 4 characters, uppercase';
COMMENT ON COLUMN dh_litho.codestrati IS 'Stratigraphy code, 4 characters, uppercase';
COMMENT ON COLUMN dh_litho.descriptions IS 'Geological description, naturalist style';
COMMENT ON COLUMN dh_litho.oxidation     IS 'Supergene oxidation';
COMMENT ON COLUMN dh_litho.deformation IS 'Deformation intensity, semi-quantitative, 0 to 4';
COMMENT ON COLUMN dh_litho.alteration IS 'Alteration intensity, semi-quantitative, 0 to 4';
COMMENT ON COLUMN dh_litho.water IS 'Water presence in drill hole';

Allez, on continuera plus tard.
Continuons: en tenant compte des pertinentes remarques de Rémi, modifions donc le script de création de la table des lithologies:

DROP TABLE dh_litho;
CREATE TABLE dh_litho (
  id character varying(20),
  depfrom numeric(10,2),
  depto numeric(10,2),
  description varchar,
  code1 varchar(4),
  code2 varchar(4),
  code3 varchar(4),
  code4 varchar(4),
  value1 integer,
  value2 integer,
  value3 integer,
  value4 integer
);

Ainsi, on est tout à fait neutres du point de vue des codes et variables. Ah oui mais on ne sait pas ce qu'il y a dedans: qu'à cela ne tienne, commentons donc:

COMMENT ON TABLE dh_litho IS 'Drill holes or trenches geological descriptions';
COMMENT ON COLUMN dh_litho.id IS 'Identifier, refers to dh_collars';
COMMENT ON COLUMN dh_litho.depfrom       IS 'Interval beginning depth';
COMMENT ON COLUMN dh_litho.depto         IS 'Interval ending depth';
COMMENT ON COLUMN dh_litho.description IS 'Geological description, naturalist style';
COMMENT ON COLUMN dh_litho.code1 IS 'Lithology code, 4 characters, uppercase';
COMMENT ON COLUMN dh_litho.code2 IS 'Stratigraphy code, 4 characters, uppercase';
COMMENT ON COLUMN dh_litho.code3         IS 'Supergene oxidation';
COMMENT ON COLUMN dh_litho.code4         IS 'Water presence in drill hole';
COMMENT ON COLUMN dh_litho.value1 IS 'Deformation intensity, semi-quantitative, 0 to 4';
COMMENT ON COLUMN dh_litho.value2 IS 'Alteration intensity, semi-quantitative, 0 to 4';

Et voilà, pas plus compliqué que ça.
Si on veut pousser plus loin, on pourra faire des vues avec des codes plus explicites. Par exemple:

CREATE VIEW dh_collars_custom AS SELECT id, depfrom, depto, code1 AS codelitho, code2 AS codestrati, description, code3 AS oxidation, value1 AS deformation, value2 AS alteration, code4 AS water FROM dh_litho;

Mais bon, pour le moment, on en est plutôt à faire le schéma interne de la base. Comprendre: faire la mécanique qui va tourner dans la base de données, et faut qu'elle tourne, sans anicroche. Ensuite, on verra pour les schémas externes. Autrement dit, les visions de la base qu'en auront les utilisateurs (au sens large), à définir en fonction de leurs besoins, de leurs droits, etc. Pour une base, on a un schéma interne, et autant de schémas externes que nécessaire. On verra plus tard.

Ah, au fait, il y avait une modif sur la table des têtes d'ouvrages:
ALTER TABLE dh_collars DROP COLUMN accusum;

Comme le disait Rémi, la somme des accumulations est une information très utile, notamment pour rapidement se représenter l'intérêt d'un secteur, en cartographiant cette somme. Pour rappel, c'est la somme, pour chaque ouvrage, de l'accumulation (longueur * teneur) sur l'ensemble des passes minéralisées de l'ouvrage. Mais cette information peut rapidement se reconstruire rapidement par requête. En fait, ce champ était hérité d'une époque où ce genre de requête pouvait durer une bon quart d'heure. Avec les outils d'aujourd'hui, une poignée de millisecondes suffiraient, pour la même quantité de données. Ah, c'est plus ce que c'était...

A+
Pierre

--
____________________________________________________________________________
Pierre Chevalier Géologue EI
   Mesté Duran
   32100 Condom
 Tél+fax  :    09 75 27 45 62
               05 62 28 06 83
                06 37 80 33 64
 Émail  :   pierrechevaliergeolCHEZfree.fr
 icq#   :   10432285
skype : pierre.chevalier1967 http://pierremariechevalier.free.fr/pierre_chevalier_geologue ____________________________________________________________________________


Liste de diffusion geolllibre
Pour s'inscrire : mailto:geolllibre-request@xxxxxxxxxx?subject=subscribe
Pour se desinscrire : mailto:geolllibre-request@xxxxxxxxxx?subject=unsubscribe

        

Other related posts: