Sorry,

Le 7 août 2008 15:10, fricard.claude <[EMAIL PROTECTED]> a écrit :

> Yves, Bernard
> oK avec nb2: c'est effectivement sur chaque enregistrement de la Table MON
> ANNUAIRE, que je souhaite "Updater" l'age calculé. cette commande ne
> fonctionne pas:
>  UPDATE  "MON ANNUAIRE" SET "age"  = DATEDIFF( 'year', NOW( ), "date de
> naissance" ), "date de naissance"



sans le from "mon annuaire" ça ira mieux... copier/coller d'un select et ai
oublié d'enlever le from ;-)

Yves


> FROM  " MON ANNUAIRE"
> avec ce résultat : (pb de syntaxe?)
>
>
> --------------------------------------------------------------------------------
> Statut SQL: 37000
> Code d'erreur: -11
>
> Unexpected token FROM, requires = in statement [ UPDATE  "MON ANNUAIRE" SET
> "age"  = DATED
> "]
>
>
> --------------------------------------------------------------------------------
>
>
> Questions :
>  1.. dans une requête SQL est-ce que toute commande doit commencer par
> SELECT ? (contrairement à MySQL)
>  2.. Est-ce SQL était incontournable pour faire ce type de calcul ? ce
> langage SQL m'intéresse mais pour mes "élèves" au club (retraités pour la
> plupart ...) ce langage SQL sera tout à fait hermétique ...
> On va y arriver ....merci à vous
> Claude
>
>  ----- Original Message -----
>  From: yves dutrieux
>  To: [email protected]
>   Sent: Thursday, August 07, 2008 12:33 PM
>  Subject: Re: [users-fr] OOo Base
>
>
>  Bonjour,
>
>  Le 7 août 2008 11:07, Bernard Ribot <[EMAIL PROTECTED]> a écrit :
>
>  > Bonjour
>  > C'est plutôt un UPDATE qu'il faut utiliser, avec une clause WHERE pour
>  > déterminer le tuple sur lequel tu veux faire la modif.
>
>
>  Bernard a raison.
>
>  et dans notre cas, ça deviendra (pas testé):
>
>  update "MON ANNUAIRE" set "age" = datediff('year',now(),"date de
> naissance")
>
>  nb1 : si tu veux affecter la valeur à un seul enregistrement de ta base,
> il
>  faut ajouter une clause "where" derrière.
>  nb2 : Je préfère de loin utiliser une requête pour ce genre de calcul
> parce
>  que tu seras obligé de faire ton "update" juste avant d'utiliser les
> valeurs
>  (si tu veux un résultat cohérent). Dans une requête, le calcul se fait au
>  moment où tu utilises la requête (donc résultat toujours CORRECT). Dans ta
>  table, le résultat est CORRECT uniquement si tu lances l'update JUSTE
> avant
>  d'utiliser les valeurs....
>
>  C'est que mon avis perso ;-)
>
>  Yves
>
>  >
>  > Bernard
>  >
>  > fricard.claude a écrit :
>  >
>  >> Yves,
>  >> ça marche ! super
>  >> Si je peux abuser de ton temps et tes connaissances est-ce que je peux
>  >> assigner cette valeur mon-age à un élément de ma table MON ANNUAIRE ?
>  >> genre: SELECT "age" FROM "MON ANNUAIRE" = mon_age
>  >> je n'ai pas trouvé réponse dans les différentes docs:  Sql, Mysql,
> hsqldb
>  >> Merci encore pour ton aide
>  >> Claude
>  >>
>  >>  ----- Original Message -----  From: yves dutrieux  To:
>  >> [email protected]  Sent: Wednesday, August 06, 2008 2:15 AM
>  >>  Subject: Re: [users-fr] OOo Base
>  >>
>  >>
>  >>  Bonsoir Claude,
>  >>
>  >>  Le 5 août 2008 14:35, fricard.claude<[EMAIL PROTECTED]> a
> écrit
>  >> :
>  >>
>  >>  > Yves,
>  >>  > Merci pour tes indications mais en entrant cette commande SQL :
>  >>  > Une table MON ANNUAIRE avec un champ: date de naissance (type de
> champ
>  >> =>
>  >>  > date)
>  >>  >
>  >>  >
>  >>  >
>  >>
> --------------------------------------------------------------------------------
>  >>  >
>  >>  > SELECT "date de naissance" FROM "MON ANNUAIRE"
>  >>  > DATEDIFF(YEAR,DATE(),"date de naissance") as mon_age
>  >>  > j'obtiens : Unexpected token: ( in statement [SELECT "date de
>  >> naissance"
>  >>  > FROM "MON ANNUAIRE"
>  >>  > DATEDIFF(YEAR,DATE(]
>  >>
>  >>  essaye : select datediff('year',now(),"date de naissance") as mon_age,
>  >> "date
>  >>  de naissance" from "MON ANNUAIRE"
>  >>
>  >>  Yves
>  >>
>  >>  >
>  >>  > La commande SELECT "date de naissance" .... seule passe bien mais il
>  >> doit y
>  >>  > avoir un pb dans la syntaxe de la commande DATEDIFF() , l'argument
>  >> string ==
>  >>  > Year est-il correct ? est-ce qu'une telle fonction s'exécute
>  >> directement en
>  >>  > Sql ou avec un autre outil ? je ne suis pas très clair la-dessus !
>  >>  > Merci de m'éclairer.
>  >>  > Claude
>  >>  >   ----- Original Message -----
>  >>  >  From: yves dutrieux
>  >>  >  To: [email protected]
>  >>  >  Sent: Monday, August 04, 2008 5:10 PM
>  >>  >  Subject: Re: [users-fr] OOo Base
>  >>  >
>  >>  >
>  >>  >  Bonjour,
>  >>  >
>  >>  >  Le 2 août 2008 20:03, Bernard Ribot<[EMAIL PROTECTED]> a
> écrit :
>  >>  >
>  >>  >  > Bonsoir
>  >>  >  > Dans OOo Base tu peux écrire des requêtes SQL (Outils > SQL).
>  >>  >  > Bernard
>  >>  >  >
>  >>  >  > fricard.claude a écrit :
>  >>  >  >
>  >>  >  >  Où pourrais-je trouver de l'info, et des exemples de calculs de
>  >> champs
>  >>  >  >> dans une requête exemple : calculer l'âge de personnes
> connaissant
>  >> leur
>  >>  > date
>  >>  >  >> de naissance; genre d'expression : (Date() - date de naissance)
>  >> /365.
>  >>  >  >
>  >>  >  > Il faut éditer ta requête en mode SQL (clic droit - editer en sql
> ?)
>  >>  >  et inclure la fonction sql suivante :
>  >>  >  DATEDIFF(string, datetime1,
>  >>  >   datetime2)[2<http://hsqldb.org/doc/guide/guide.html#ftn.posthyper
> >
>  >>  >   ]
>  >>  >
>  >>  >  returns the count of units of time elapsed from datetime1 to
>  >> datetime2.
>  >>  > The
>  >>  >  string indicates the unit of time and can have the following values
>  >>  >  'ms'='millisecond', 'ss'='second','mi'='minute','hh'='hour',
>  >> 'dd'='day',
>  >>  >  'mm'='month', 'yy' = 'year'. Both the long and short form of the
>  >> strings
>  >>  > can
>  >>  >  be used.
>  >>  >  donc dans ton cas: DATEDIFF(year,date(),date_de_naissance) as
>  >> Mon_agepour
>  >>  >  retrouver l'âge dans un nouveau champs Mon_age.nb : j'ai pas testé
>  >> donc,
>  >>  >  voir si la fonction date() existe bien et retourne bien une valeur
>  >>  >  datetime...Yves
>  >>  >
>  >>  >
>  >>  >  >
>  >>  >  >> Avec Access il y a des requêtes de mise à jour de données a t-on
> la
>  >>  > même
>  >>  >  >> chose avec OOo base ?
>  >>  >  >> Les fonctions et constantes disponibles sont-elles listées
> quelque
>  >>  > partje
>  >>  >  >> n'ai rien trouvé dans les tutoriels jusqu'à présent.
>  >>  >  >> merci d'avance
>  >>  >  >> Claude
>  >>  >  >>
>  >>  >  >>
>  >>  >  >>
>  >>  >  >
>  >>  >  >
>  >> ---------------------------------------------------------------------
>  >>  >  > To unsubscribe, e-mail: [EMAIL PROTECTED]
>  >>  >  > For additional commands, e-mail: [EMAIL PROTECTED]
>  >>  >  >
>  >>  >  >
>  >>  >
>  >>  >
>  >>  >  --
>  >>  >  web site : http://www.molenbaix.com
>  >>  >
>  >>
>  >>
>  >>
>  >>  --  web site : http://www.molenbaix.com
>  >>
>  >>
>  >>
>  >
>  > ---------------------------------------------------------------------
>  > To unsubscribe, e-mail: [EMAIL PROTECTED]
>  > For additional commands, e-mail: [EMAIL PROTECTED]
>  >
>  >
>
>
>  --
>  web site : http://www.molenbaix.com
>



-- 
web site : http://www.molenbaix.com

Répondre à