Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2403 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Access / Entrer des valeurs au format numérique par SQL

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Access / Entrer des valeurs au format numérique par SQL

n°2004845
NathanGe
Posté le 25-06-2010 à 16:35:37  profilanswer
 

Bonjour,
 
Je reprends le code d'une autre personne pour y effectuer des ajouts/modifications.
Notamment, dans ce code, des requetes SQL sont rédigées pour permettre l'entrée de grandeur dans un fichier Access.
Mon problème est que ces grandeurs sont entrées dans un format texte et non pas numérique ou scientifique comme je le souhaiterais.
Les grandeurs à rentrer peuvent varier sur plusieurs ordres de grandeurs, ce qui rend intéressant l'entrée d'un format de type scientifique et numérique, bien compris pas access.
 
Est-ce que vous pourriez m'indiquer l'écriture à faire des commandes.
 
Actuellement, j'ai une écriture du type :

Code :
  1. INSERT INTO Table_Resultats(Alpha,Beta,Gamma) values('a', 'b', 'c')


Pour l'entrée de trois variables calculées, a, b et c
 
Comment doit-elle être modifiée pour que les valeurs numériques a,b et c soit considérées, au final, comme des grandeurs numériques dans le fichier résultat Access ?
 
Merci d'avance de votre aide,
 
Nathan

mood
Publicité
Posté le 25-06-2010 à 16:35:37  profilanswer
 

n°2004852
olivthill
Posté le 25-06-2010 à 16:57:06  profilanswer
 

On peut faire  
INSERT INTO Table_Resultats(Alpha,Beta,Gamma,Delta) values('a', 'b', 'c', 1)
Mais il faut que Delta soit défini avec un type numérique.
 
En résumé, avec SQL, s'il y a des apostrophes, c'est une chaine de caractères. S'il n'y a pas d'apostrophe, c'est un nombre.

n°2004853
NathanGe
Posté le 25-06-2010 à 17:01:47  profilanswer
 

Pourtant, quand je rentre des valeurs sans apostrophes, je continue à voir des termes de type texte.
 
D'autre part, la solution ne peut pas être aussi simple, car, en pratique, la requete melange des arguments qui doivent être rentré en texte et d'autre en numérique. On a plutot :
 

Code :
  1. INSERT INTO Table_Resultats(Namefile,Alpha,Beta,Gamma) values('NomDuFichier','a', 'b', 'c')


 
Est-ce qu'il est possible d'indiquer à la commande SQL que, spécifiquement, ces trois grandeurs a, b et c doivent être des grandeurs numériques (par un argument, une conversion ...) précédant les valeurs ?
 
Bien cordialement,


Message édité par NathanGe le 25-06-2010 à 17:02:15
n°2004855
olivthill
Posté le 25-06-2010 à 17:06:21  profilanswer
 

Si la colonne est définie avec nu type qui n'est pas un type numérique, alors il faut entrer une valeur qui n'est pas numérique. Il faut être cohérent.
 
Ensuite, si la valeur est stockée sous la forme d'une chaine de caractères, ce n'est pas vraiment un problème, car ensuite, on peut la convertir en un nombre si elle contient un nombre.
 
En VBA Access la conversion en un nombre est faite par CInt() ou CDbl().

n°2004860
NathanGe
Posté le 25-06-2010 à 17:29:19  profilanswer
 

OK,
 
J'ai essayé de faire la conversion CDBl() en tapant :

Code :
  1. INSERT INTO Table_Resultats(Namefile,Alpha,Beta,Gamma) values('NomDuFichier',CDbl(a), CDbl(b), CDbl(c))


En pratique, les données ainsi rentrée ne peuvent toujours pas être correctement triée, par ordre de grandeur (ce qui me semble indiquer qu'elles ne sont pas considérées comme des double). D'autre part, quand je bascule en Mode Création la base de données Table_Resultats ainsi créée, l'ensemble des colonnes restes présentées comme ayant été remplie en mode 'Texte' (comme Type de données insérées dans le document Access). Ainsi, je n'ai pas l'impression qu'Access ait correctement fait ce remplissage.
 
Comment pourrais-je m'en assurer  ? Comment avoir, en mode création, l'indication correcte que le remplissage s'est fait en mode 'Numérique' ?
 
Bien cordialement,
 

n°2005151
Oliiii
Posté le 28-06-2010 à 08:12:31  profilanswer
 

Il faut change le type des colonnes de mode texte a un mode numerique.
 
Vu que les colonnes sont en mode text pour le moment, Access convertit tout en texte, meme si tu lui dit que c'est du numerique.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  Access / Entrer des valeurs au format numérique par SQL

 

Sujets relatifs
exporter données à partir d'excel vers une table accessquel logiciel pour faire du SQL sur des GROS fichiers bruts (csv)?
Lancement de requête Sql automatiséEviter les failles XSS et les injections SQL
Urgent SQL vers Oracle[RESOLU][vbs]access denied
Base Access "usée" ?Copie de lignes avec format dans VBA
comment configurer DSN si la base Access est partagéeAfficher des valeurs qui ne sont pas dans un groupe
Plus de sujets relatifs à : Access / Entrer des valeurs au format numérique par SQL


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR