problème mysql

Une question, un bug ?
Répondre
elparrain42
Membre
Messages : 11
Inscription : mar. mai 12, 2009 6:20 pm

problème mysql

Message par elparrain42 »

Bonjour à tous j'ai un petit problème sous graph weather je voudrai l'utiliser en odbc via une base de données mysql mais le problème lorsque j'ai fini de tout paramétrer et que j'ajoute le nom de ma table il me dit que le type de champ date n'est pas supporté j'ai essayé pas mal de solutions et je n'arrive pas à m'en sortir un petit coup de main serai sympa merci :)
Avatar de l’utilisateur
jturlier
Membre
Messages : 3149
Inscription : mar. août 22, 2006 8:38 am
Localisation : 34410 Sérignan - Languedoc
Contact :

Re: problème mysql

Message par jturlier »

Bonsoir
quel est le data type de ton champ date/heure ds mysql ?

Jean
elparrain42
Membre
Messages : 11
Inscription : mar. mai 12, 2009 6:20 pm

Re: problème mysql

Message par elparrain42 »

ben j'ai un type timestamp avec la date et l heure et ensuite deux type char avec un champ pour la date et un champ pour l'heure et aucun de ces deux types n'est apparemment reconnu par le logiciel pourtant il parait reconnaitre les timestamp je ne comprends pas :(

merci quand même de intéresser à mon cas :)
Avatar de l’utilisateur
jturlier
Membre
Messages : 3149
Inscription : mar. août 22, 2006 8:38 am
Localisation : 34410 Sérignan - Languedoc
Contact :

Re: problème mysql

Message par jturlier »

Le timestamp s'il est de type sql n'est pas reconnu par GW, il me semble que j'ai posté qq chose sur le forum pour contourner le pb. Si tu ne trouves pas dis-le je cherchera, en gros, ma solution (il y en a d'autres naturellement !) était de créer une vue avec tous les champs, en transformant le timestamp sql en timestamp unix.
Pour Antoine :
Ne penses-tu pas que ça pourrait être une idée de pouvoir utiliser le TS SQL qui est qd même plus précis que celui d'UNIX ?
Bonne soirée à tous

Jean
elparrain42
Membre
Messages : 11
Inscription : mar. mai 12, 2009 6:20 pm

Re: problème mysql

Message par elparrain42 »

j'ai effectivement essayé ta solution mais le problème c'est que view crée en quelque sorte un autre table non? serai t-il possible de l avoir dans la même table que ma table de données de base?

merci ;)
elparrain42
Membre
Messages : 11
Inscription : mar. mai 12, 2009 6:20 pm

Re: problème mysql

Message par elparrain42 »

bon après test ça marche nikel un grand merci à toi jean!!!!

j'aurai juste ma vu à exécuter chaque fois que j enregistre une donnée dans ma base mais bon c est pas génant c est le c++ qui le fait xD


merci encore
Avatar de l’utilisateur
TiToine
Site Admin
Messages : 3356
Inscription : lun. mars 20, 2006 11:16 am
Localisation : Montréal
Contact :

Re: problème mysql

Message par TiToine »

jturlier a écrit :Le timestamp s'il est de type sql n'est pas reconnu par GW, il me semble que j'ai posté qq chose sur le forum pour contourner le pb. Si tu ne trouves pas dis-le je cherchera, en gros, ma solution (il y en a d'autres naturellement !) était de créer une vue avec tous les champs, en transformant le timestamp sql en timestamp unix.
Pour Antoine :
Ne penses-tu pas que ça pourrait être une idée de pouvoir utiliser le TS SQL qui est qd même plus précis que celui d'UNIX ?
Bonne soirée à tous

Jean
En fait c'est assez compliqué de supporter tous les champs. J'utilise un composant Microsoft qui est limité.
En tout cas il me semblait qu'il était supporté. C'est bien quelque chose du genre 20090512103026 (date aujourd'hui + heure fictive pour exemple) ?
Avatar de l’utilisateur
jturlier
Membre
Messages : 3149
Inscription : mar. août 22, 2006 8:38 am
Localisation : 34410 Sérignan - Languedoc
Contact :

Re: problème mysql

Message par jturlier »

TiToine a écrit :
jturlier a écrit :Le timestamp s'il est de type sql n'est pas reconnu par GW, il me semble que j'ai posté qq chose sur le forum pour contourner le pb. Si tu ne trouves pas dis-le je cherchera, en gros, ma solution (il y en a d'autres naturellement !) était de créer une vue avec tous les champs, en transformant le timestamp sql en timestamp unix.
Pour Antoine :
Ne penses-tu pas que ça pourrait être une idée de pouvoir utiliser le TS SQL qui est qd même plus précis que celui d'UNIX ?
Bonne soirée à tous

Jean
En fait c'est assez compliqué de supporter tous les champs. J'utilise un composant Microsoft qui est limité.
En tout cas il me semblait qu'il était supporté. C'est bien quelque chose du genre 20090512103026 (date aujourd'hui + heure fictive pour exemple) ?
Bonjour Antoine,
le TS SQL est tout à fait spécial, il inclue ds certains cas le décalage par rapport à UTC. Il s'affiche sous la forme 2009-05-15 10:01:02+02 mais ce n'est pas du caractère. C'est un binaire qui fait jusqu'à 8 octets. La solution pour le traiter est très simple :

SELECT EXTRACT(EPOCH FROM a.savetime)as Tstamp from ta_table a where ...

ce qui le transforme en TS UNIX.

Bonjour elparrain42 (tu parle d'un nom, c'est long à écrire et ça fait maffioso !!! .. je plaisante.)
elparrain42 a écrit :bon après test ça marche nikel un grand merci à toi jean!!!!

j'aurai juste ma vu à exécuter chaque fois que j enregistre une donnée dans ma base mais bon c est pas génant c est le c++ qui le fait xD


merci encore
Tu n'as aucun besoin de créer la vue à chaque fois, elle est enregistrée ds ta base de données (quel qu'en soit le moteur) et au lieu de spécifier ta table ds les requêtes, tu indiques le nom de ta view.

Jean
elparrain42
Membre
Messages : 11
Inscription : mar. mai 12, 2009 6:20 pm

Re: problème mysql

Message par elparrain42 »

mais est ce que ma vue ce mettra automatiquement à jour lorsque j'enregistrerai une nouvelle entrée dans ma table?
désolé mais c'est la première fois que je vois ce type de traitement je ne suis pas un pro du SQL lol.

merci encore :)
Avatar de l’utilisateur
jturlier
Membre
Messages : 3149
Inscription : mar. août 22, 2006 8:38 am
Localisation : 34410 Sérignan - Languedoc
Contact :

Re: problème mysql

Message par jturlier »

elparrain42 a écrit :mais est ce que ma vue ce mettra automatiquement à jour lorsque j'enregistrerai une nouvelle entrée dans ma table?
désolé mais c'est la première fois que je vois ce type de traitement je ne suis pas un pro du SQL lol.

merci encore :)

Re-bonjour,
une vue est une requête dynamique qui traite les données avant de les passer à l'utilisateur (en fait elle se comporte exactement comme une table, mais elle n'a pas de données propres). Elle est enregistrée une fois pour toutes. Si tu souhaites la modifier, il faut la détruire de la même façon que tu détruis une table et la recréer ensuite. La différence avec une table, c'est qu'une vue ne modifie en aucun cas les données de la ou les tables sur lesquelles elle s'applique, elle ne fait que les utiliser.
J'espère avoir été clair, n'hésite pas si tu as d'autres questions ou besoins de précisions.
Jean

Station : VP2 Pro Console Vue + anémomètre à Ultra-sons
Logiciels : Cumulus 1.9.4 + Cumulus2SQL
Serveur local : Apache + MySQL +PHP
PC : W10
Support Audio : FR

http://meteoserignan.ddns.net
Image
"Aide-toi d'abord toi-même et les autres t'aideront ... peut-être"
elparrain42
Membre
Messages : 11
Inscription : mar. mai 12, 2009 6:20 pm

Re: problème mysql

Message par elparrain42 »

donc si j'ai bien compris dans mon programme il faut que je fasse une requête pour la détruire et une autre qui la recrée derrière pour qu'elle soit tout le temps à jour à chaque nouvel enregistrement?
Avatar de l’utilisateur
jturlier
Membre
Messages : 3149
Inscription : mar. août 22, 2006 8:38 am
Localisation : 34410 Sérignan - Languedoc
Contact :

Re: problème mysql

Message par jturlier »

Je savais bien que je m'étais mal exprimé.
Tu crées la view UNE SEULE FOIS. Ensuite tu ne fais plus rien. Les requêtes dont tu as besoins tu les exécutes sur cette view comme sur une table. Comme je te l'ai dit une view n'affecte en rien les données, ça peut être considéré comme un filtre qui traite les données que tu veux extraire. Elle est INDEPENDANTE des données sur lesquelles elle travaille.
Est-ce plus clair ?

Jean
elparrain42
Membre
Messages : 11
Inscription : mar. mai 12, 2009 6:20 pm

Re: problème mysql

Message par elparrain42 »

ok c'est plus claire vu qu'en fait elle est rattaché à ma table elle se mets à jour toute seule en gros c'est ça?
En tout cas je serais curieux de savoir comment ça marche car par exemple avec une base d'environs 340 enregistrements la vue ne fait qu'une vingtaine d'enregistrements je me demande comment ça se fais...

En tout cas c'est cool maintenant je vais pouvoir faire fonctionner graph weather nickel et faire mon site web :)
Avatar de l’utilisateur
jturlier
Membre
Messages : 3149
Inscription : mar. août 22, 2006 8:38 am
Localisation : 34410 Sérignan - Languedoc
Contact :

Re: problème mysql

Message par jturlier »

A moins d'avoir une sélection particulière, ta vue devrait avoir le même nombre d'enregistrements puisque d'après ce que j'ai compris, tu ne traites que le timestamp sans clause de sélection (where) ... cela peut aussi être ds ta requête.

Jean
elparrain42
Membre
Messages : 11
Inscription : mar. mai 12, 2009 6:20 pm

Re: problème mysql

Message par elparrain42 »

tout à fait je n'ai aucune conditions de sélection et le pire c'est que tout marche avec ce nombre d'enregistrement...les statistiques sont toutes bonnes avec l'heure exact c'est très étonnant le timestamp unix est bizarre lol
Répondre