Nous utilisons des cookies pour vous garantir la meilleure expérience sur notre site. Si vous continuez à utiliser ce dernier, nous considèrerons que vous acceptez l'utilisation des cookies. J'ai compris ! ou En savoir plus !.
banniere

Le portail francophone de la géomatique


Toujours pas inscrit ? Mot de passe oublié ?
Nom d'utilisateur    Mot de passe              Toujours pas inscrit ?   Mot de passe oublié ?

Annonce

Printemps des cartes 2024

#1 Mon 26 May 2003 09:02

Laurent Frilleux
Invité

requete SQL

Bonjour

Je dispose d'une serie de stations pour lesquelles sont mesures differents parametres par annee. Je dois conserver uniquement les 3 dernieres annees.
Pour simplifier la tache, ce ne sont pas forcement les memes annees pour chaque station et le nombre de parametres peut lui aussi varier.

Si quelqu'un a une idee pour realiser cette selection (en mapinfo ou access), je lui en serait tres reconaissant car mon tableau depasse les 70 000 enregsitrements.

Merci par avance et bonne journee

Laurent FRILLEUX

STRATEGIS

Parc 2000
19 rue Joe Dassin
34 184 MONTPELLIER CEDEX 4

www.strategis.fr

 

#2 Tue 27 May 2003 09:18

Geo Ch
Invité

Re: requete SQL

De: christophe
Bonjour,

70 000 enregistrement c'est une paille pour une BD.(tout du moins pour les moteurs jets (ACCESS).

soit TABLESTATION:
idstation as long (clefprimaire)
mesurea
mesureb
mesurec
....
date

Sous ACCESS
creer une requete MAREQUETE
(ajouter la table TABLESTATION)
definir les parametres:
TABLESTATION.Date=[date] ET
puis les parametres optionnels
TABLESTATION.MesureA=[param1] OU mesureb= [param2] etc

Ne pas oublier de faire un click droit en mode creation de la requete et de definir la nature des parametres,
[date] as string
[param1] as double etc ...

Ensuite par le code sous access ou en VB DAO(remplacer currentdb() par opendatabase( mabase )

Dim bd as database
dim rq as querydefs
dim rst as recordset

set bd=currentdb()
set rq= bd.querydefs( MAREQUETE )
rq.parameters( date )= 22/03/2002
rq.parameters( param1 )=2.56
pour les parametres non utilises:
rq.parameters( paramN )=null
(avec null autorise ou toute valeur absorbante du champs, 0,  etc ...)

set rst = rq.openrecordset

IF not(rst.eof and rst.bof) then
//initialise le compte
rst.movefirst
rst.movelast

j%=msgbox( il y a  & rst.recordcount & enregistrement retournes )

// premier enregistrement

rst.movefirst

DO While not rst.eof
debug.print rst( mesurea )
etc ...

rst.movenext
loop

else

i%=msgbox( pas de donnees )

end if

Si tu n'y arrive pas mel moi un exemple de BD access97 avec les tables(vides) dont tu souhaite obtenir les donnees. C'est pas du SQL c'est une requete compilee (access le fait pour toi), si tu introduis une requete sql a l'aide de sa description SELECT TABLEMACHIN etc ... a chaque declenchement de ta requete la syntaxe va etre analysee puis interpretee, si tu utilises une requete compilee son initialisation est instantanee et optimisee.

Et ceci pour rebondir sur le fil logiciel de cartographie

Si l'informatique etait consideree comme un outil et non comme une fin en soi, nous pourrions avoir beaucoup plus de cartographes informaticiens, et par la meme de belles cartes informatisees.

Le devellopement des langages orientes objets et des Bases de Donnees Relationnelles sont une revolution vieille d'une dizaine d'annees dans le monde informatique.
La nature de ces concepts facilite et augmente les capacites de modelisation. Donc logiquement les objets specifiques d'une profession (cartes par exemple) devraient etre facilement modelises et de plus en plus proche de la realite (celle des cartographes ?).
Or l'acroissement des capacites informatiques c'est accompagne de celui de la technicite pour les mettre en oeuvre.
Ce qui a pour consequence de dissocier l'informaticien du cartographe, le premier se concentrant sur le fonctionnement de l'objet, le second sur l'aspect.
Et j'ajouterais (en reference a l'interessant extrait de these poste precedement) que la technicite croissante des deux parties rend les echanges entres elles deux de plus en plus complexes et le resultat final de plus en plus abscon pour le citoyen lambda.

Christophe
informaticien&cartographe amateur.

 

Pied de page des forums

Powered by FluxBB