Convertir les données d'une feuille Excel en requête SQL? Spossible?

Convertir les données d'une feuille Excel en requête SQL? Spossible? - SQL/NoSQL - Programmation

Marsh Posté le 02-09-2002 à 23:47:50    

Salut,
 
voilà j'ai une feuille Excel avec plein de données et j'aimerai transformer chaque ligne de cette feuille en requête SQL "INSERT" pour pouvoir ensuite les insérer dans ma base de mon compte Free.fr. Peut etre que Excel propose cette fonction?
 
Je sais pas si j'ai été très clair là :sweat: ... on verra bien  :D

Reply

Marsh Posté le 02-09-2002 à 23:47:50   

Reply

Marsh Posté le 03-09-2002 à 09:20:55    

Une fonction toute prête, ça m'étonnerait beaucoup ;)

Reply

Marsh Posté le 03-09-2002 à 10:36:41    

Ca n'existe pas. Faut que tu construises les chaînes de caractères à la main dans une colonne de ta feuille Excel (formule du genre ="INSERT INTO ma_table (" & A1 & " )"...), et que tu copie le résultat de cette colonne dans un fichier plat que tu fais gober à MySQL.

Reply

Marsh Posté le 03-09-2002 à 10:44:04    

_Mac_ a écrit a écrit :

Ca n'existe pas. Faut que tu construises les chaînes de caractères à la main dans une colonne de ta feuille Excel (formule du genre ="INSERT INTO ma_table (" & A1 & " )"...), et que tu copie le résultat de cette colonne dans un fichier plat que tu fais gober à MySQL.




 
 :(  :(  J'ai pas très bien compris.  
Ca fait seulement quelques jours que j'utilise Excel.  :o

Reply

Marsh Posté le 03-09-2002 à 11:07:36    

Comme disait Mac tu as par ex :
dans ta feuille excel  
 
Num    Libellé stock  
123567 abbé 12
45687 couleuvre 256
56421 georges   1345
 
il faut que tu arrives à générer les lignes suivantes
 
insert into matable (num, lib, stock) values (123567,'abbé',12)
insert into matable (num, lib, stock) values (45687,'couleuvre',256)
...
 
donc au niveau d'Excel tu te démerdes pour
trouver la formule à recopier pour concaténer tes champs afin d'arriver au résultat ci-dessus  
ex : dans la 4 ème cellule 1 ère ligne à coté 123567 abbé 12
tu tapes un truc du style
= 'insert into matable (num, lib, stock) values (&A1&,'&B1& .... (faut regarder l'aide d'Excel)
 
et bien sur tu recopies cette formule sur le reste des lignes
 
 :ouch:  
 
 

Reply

Marsh Posté le 03-09-2002 à 11:09:01    

Fo connecter Excel en Odbc nan ?


---------------
"Nous allons reformater les français" © Nicolas Sarkozy
Reply

Marsh Posté le 03-09-2002 à 11:25:48    

Odbc avec Excel ?
 
c'est pas bête du tout !!
 

Reply

Marsh Posté le 03-09-2002 à 11:37:37    

je veux éviter de passer par odbc  ;)  
 
je vais essayer ce que tu proposes vttman2  :jap: , ensuite je ferais manger les requêtes au mysql de free  :sol:

Reply

Marsh Posté le 03-09-2002 à 11:38:04    

vttman2 a écrit a écrit :

Odbc avec Excel ?
 
c'est pas bête du tout !!
 
 




 
plus simple encore exporter la table excel au format texte (voir les options pour definir le separateur de colones etc...)
 
puis ensuite tu fais
un  
copy TRUCS from 'TOTO.TXT' using delimiters '|' with null as '\null';
si tu definis ton delimiteur comme |
 
je vois pas plus simple et ca ca marche avec tous les langages PL/PGSQL donc Oracle PostgreSQL etc...


Message édité par kuroineko le 03-09-2002 à 11:41:33

---------------
[:kuroineko] Francois.P tel: (+33)617230820 http://www.ifrance.com/fpussault  fpussault@caramail.com
Reply

Marsh Posté le 03-09-2002 à 11:39:34    

:??:  :??: pour les formules à entrer, il faut le faire pour chaque ligne  :??:  :??:  
 
jvais regarder l'aide un peu, ca me fera un peu de lecture

Reply

Marsh Posté le 03-09-2002 à 11:39:34   

Reply

Marsh Posté le 04-09-2002 à 10:31:57    

Alors NeoKill tu t'en sors ?

Reply

Marsh Posté le 27-09-2002 à 21:40:01    

up! si tu t'en es sorti, pourrais tu donner la solution STP, ça m'intéresse beaucoup :)
 
Merci :jap:

Reply

Marsh Posté le 30-09-2002 à 16:36:49    

ViToM a écrit a écrit :

up! si tu t'en es sorti, pourrais tu donner la solution STP, ça m'intéresse beaucoup :)
 
Merci :jap:




 
pareil
 
 
il y aurait il un autre moyen pour faire de la saisie plus rapidement? avec xml ce serati possible? je ne connait pas du tt xml pourriez vous m'eclairer merci

Reply

Marsh Posté le 11-10-2002 à 11:49:50    

tu peux aussi exporter ton tableau excel en format txt puis le lire par un script shell pour construire tous les insert.

Reply

Marsh Posté le 11-10-2002 à 14:49:18    

@kuroineko  Tu peux expliquer ton truc un peux plus clairement car si sa marche sous oracle sa m'interesse énormement.

Reply

Marsh Posté le 11-10-2002 à 16:29:34    

je pensais que c'était simple mais la fonction que voulais utiliser n'existe pas mais c'est possible.
Copier/coller un Tableau Excel dans
Word avec liaison; Convertir un tableau en fichier texte (voir menu tableau/convertir)
apres tu peux sauver le doc word en format txt et puis tu fais une imporation avec les outils oracle (sous windows mais sous unix je connais pas mais ca doit exister)

Reply

Marsh Posté le 14-10-2002 à 22:39:55    

désolé de repondre si tardivement
 
je n'ai pas eu le temps de le faire, mais si quelqu'un a réussi ou sait le faire ca serait bien une petite explication  :benetton:  
 
 :hello:

Reply

Marsh Posté le 22-10-2002 à 18:38:07    

thecoin a écrit a écrit :

@kuroineko  Tu peux expliquer ton truc un peux plus clairement car si sa marche sous oracle sa m'interesse énormement.
 




 
dans excel tu fait exporter en format TXT (texte koi...)
avec | comme delimiteur
 
ca te donne un fichier texte type
colon1 | ref_truc | ref_machin
blabla | truc | machin
blabla2 | turc2 | machin2
...
blabla10 | truc10 | machin10
 


psql -c "copy TABLENAME from 'FILENAME' using delimiters '|' with null as '\null';" DATABASE
psql -c "select * from TABLENAME;" DATABASE
 
 colon1  | ref_truc | ref_machin
---------+----------+-----------
blabla   | truc     | machin
blabla2  | turc2    | machin2
blabla3  | truc3    | machin3
blabla4  | turc4    | machin4
blabla5  | truc5    | machin5
blabla6  | turc6    | machin6
blabla7  | truc7    | machin7
blabla8  | truc8    | machin8
blabla9  | truc9    | machin9
blabla10 | truc10   | machin10


---------------
[:kuroineko] Francois.P tel: (+33)617230820 http://www.ifrance.com/fpussault  fpussault@caramail.com
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed