EXPORTATION DE TABLES OU BASES ACCESS COMPLÈTES VERS MYSQL
cs_Obelix
Messages postés3Date d'inscriptionsamedi 24 février 2001StatutMembreDernière intervention 7 avril 2003
-
3 avril 2003 à 07:25
drissanas1
Messages postés8Date d'inscriptionmardi 31 mars 2009StatutMembreDernière intervention 1 mai 2009
-
18 avril 2009 à 21:48
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
drissanas1
Messages postés8Date d'inscriptionmardi 31 mars 2009StatutMembreDernière intervention 1 mai 2009 18 avril 2009 à 21:48
par exemple j'ai déjà tenté a affecté les données sous fourme d'une ligne comme tu as dit, une seule ligne = un seul enregistrement et après ds une grid ou msflexgrid ds vb6 j'essai de faire la séparation que je cherche et en même temp je cherch si quelqu'un va m'aider a faire mieu que moi et voila , merci
drissanas1
Messages postés8Date d'inscriptionmardi 31 mars 2009StatutMembreDernière intervention 1 mai 2009 18 avril 2009 à 21:35
merci bien mon ami, tu as compris donc bien le problème, et je tente a résoudre ce pb, en obligeant une longueur ds la table access, par exemple l'application doit affecter 3 caractère (par exmpl) pour remplir le 1er champ, et doit affecter les 25 caractères suivant ds le 2eme champ pour le remplir ( le champ "nom" par exempl) et doit affecter les 25 caractères suivant ds le champs "prenom" et ainsi de suite,
et merci encore pour tout le dérangement et pour ta comprehension ; bonne nuit
cs_mml
Messages postés4Date d'inscriptionvendredi 7 mars 2003StatutMembreDernière intervention18 avril 2009 18 avril 2009 à 15:28
Voici la règle que l'on peut dégager de cet exemple (il faudra utiliser la fonction Mid de Visual Basic si le traitement est effectué en VB :
- chaque ligne du fichier texte correspond à une ligne de la table Access (un enregistrement, une ligne dans la table), soit une personne par ligne du fichier texte ;
- Pour chaque ligne, il faut récupérer la première chaîne de caractères, considérant qu'elle contient 3 données : l'Id (identifiant numérique de la personne), son nom et son prénom. Si l'identifiant a toujours une longueur de 3, on se contente de récupérer les 3 premiers caractères, si sa longueur peut varier, il faut faire un test de numéricité du genre : "je lis chaque caractère en commençant par le premier, et tant qu'il s'agit d'un nombre je le récupère en tant que partie de l'identifiant, dès que je trouve une lettre, c'est la première lettre du groupe nom et prénom". Plus difficile est de distinguer le prénom, là on retombe sur mes premières explications : il faut un séparateur, ou au moins une constante pour savoir ou commence le prénom. Le nom c'est facile, c'est après l'identifiant numérique, le prénom, s'il n'y a pas d'espace comment fait-on pour savoir qu'il s'agit de sa première lettre ?
Nota : sur tes deux lignes d'exemples : ligne 1 il y aurait 7 champs, et ligne 2 il n'y en aurait que 6, il faudra faire en sorte que le code s'attende a ne rien avoir à mettre pour certains champs.
En espérant apporter quelques éclaircissements.
drissanas1
Messages postés8Date d'inscriptionmardi 31 mars 2009StatutMembreDernière intervention 1 mai 2009 18 avril 2009 à 11:40
merci bcp pour tes réponses précises, et je te demande pardon pour tout le dérangement, je pense qu'on a presque arriver à comprendre mon problème, par exemple le fichier text .txt est sous la forme:
369nomprenomdupersonne jhuy jhhhh 33 oplk
246mlpolkoijkjdcbnhgyybg bbbbbbbbbvgfggg 05 bgfg
...
... etc
la table "table1" par exemple à 12 champs par exemple
champ1"num cart" longueur 3, type numérique
champ2"nom et prenom" longueur 56, type alphanumériq
champ3"adress" long93, tye alph num
..
..
etc
tu regarde ici comment affecter seulement "369" dans " num cart" et le reste cad "nomprenomdupersonne....." dans " nom et prenom" et ainsi de suite
j'éspère bien que tu as compris maintenant mon problème
la table est déja créee dan access et elles bien définie
avec les type et les longueur,
le fichier .txt est là mais les données collées et il faux les séparer dans la table access.et merci encore pour mon dérangement
cs_mml
Messages postés4Date d'inscriptionvendredi 7 mars 2003StatutMembreDernière intervention18 avril 2009 17 avril 2009 à 22:47
Je ne vois pas dans l'exposé qui est fait suffisamment d'informations pour pouvoir répondre avec précision. Si s'agit de définir les champs des tables a partir des longueurs des champs existant dans un fichier texte, ont se trouve bien dans le cas de ma première réponse, c'est à dire considérer la distinction entre les champs, soit un séparateur. Comme je disais initialement, il peut s'agir de caractères visibles ou non. Non visible : tabulation, espace, fin de ligne. Il faut effectivement définir la règle de travail. Ne pas oublier que pour une création dynamique de table, il faudra quand même nommer les champs de la table et définir le type de données, etc... Essayer de trouver la règle sur laquelle on va pouvoir se baser pour faire fonctionner son code. La programmation vient après ce travail préliminaire.
drissanas1
Messages postés8Date d'inscriptionmardi 31 mars 2009StatutMembreDernière intervention 1 mai 2009 17 avril 2009 à 22:07
pa de nouvelle??
drissanas1
Messages postés8Date d'inscriptionmardi 31 mars 2009StatutMembreDernière intervention 1 mai 2009 15 avril 2009 à 21:41
bjr; merci MML, oui c'est vrai tout ce que tu as écris, et dans le cas ou il n'y a pas de séparateurs " (espace) ou ; ou , ...)" est ce qu'on ne peut pas par exemple définir les champs des tables dans éccess (ou d'une table) a partir des longeur des champs existe (reservés) dans le fichier .txt, et merci encore une fois.
cs_mml
Messages postés4Date d'inscriptionvendredi 7 mars 2003StatutMembreDernière intervention18 avril 2009 10 avril 2009 à 21:12
Bonjour,
effectivement il est possible de créer une base de donnée Access en VB, puis dans la base créée, créer des tables de donnée en créant la structure par le code, puis ajouter dans les données dans les tables (c'est le processus complet, mais pas toujours le plus approprié. Il est souvent plus rapide d'utiliser une base Access déjà créée avec Access, dans laquelle on a déjà créé les tables (en définissant les champs avec l'éditeur d'Access). Dans ce cas, en VB, on se contente de manipuler les données des tables (ajout, suppressions, modifications). Pour les données, si elle se présentent en vrac sous la forme d'un texte, il faudra dans tous les cas définir un séparateur, toujours un caractère particulier (imprimable ou non - cela peut être un espace). On peut faire beaucoup de choses, il suffit de s'y mettre...
drissanas1
Messages postés8Date d'inscriptionmardi 31 mars 2009StatutMembreDernière intervention 1 mai 2009 10 avril 2009 à 18:41
bonjour, tres bon travail, 9,5/10; ma question est ce qu'on peut faire le contraire, c-a-d creer une base de données access a partir d'un fichier text aves des champs
longs, et qui ne sont pas séparés ni aves des ',' ni avec des ";", et merci encore
cs_ios
Messages postés4Date d'inscriptionlundi 3 juin 2002StatutMembreDernière intervention24 janvier 2006 3 août 2006 à 17:10
Salut,
super source,
il manque la gestion des champs de type Objet OLE (type de champ 11)
merci pour le travail
A bientot
ios
zeltron2k3
Messages postés11Date d'inscriptionlundi 5 avril 2004StatutMembreDernière intervention16 avril 2006 3 avril 2006 à 23:37
Salut,
Merci pour ta source c' se que je cherchais, cool super en +
sa marche trés bien. 10/10 sa le vaux bien.
bbcluny
Messages postés66Date d'inscriptionmardi 25 mars 2003StatutMembreDernière intervention29 septembre 2008 25 nov. 2005 à 10:28
Merci pour ta source
anwaarber
Messages postés10Date d'inscriptionvendredi 17 décembre 2004StatutMembreDernière intervention 9 octobre 2005 12 juil. 2005 à 01:06
salut a tous.
primo ton application é génial
secondo il me l'erreur de dépassement de capacité je voix pas pq, é ce du fichier text ou autre chose..........? je c pa ?
si tu pouvait ajouter l'option de choisir l'ordre des champs alors la ca va être tros cool.
mé bravo c ce ke je cherche. :)
BBC1
Messages postés1Date d'inscriptionlundi 9 mai 2005StatutMembreDernière intervention 9 mai 2005 9 mai 2005 à 12:30
BRAVO !
Marche bien , facile à utiliser.
Quelques petits détails:
- La conversion des BOOLEENS en entiers (long?)
- La conversion des MONETAIRES se fait avec une
virgule dans le texte alors que MySql accepte un point.
encore BRAVO !
JO
cs_hnqz
Messages postés17Date d'inscriptionvendredi 2 juillet 2004StatutMembreDernière intervention 7 mai 2008 22 avril 2005 à 15:28
Juste MERCI,
Ca vaut bien une bonne note !
cs_Jin
Messages postés30Date d'inscriptionmercredi 4 décembre 2002StatutMembreDernière intervention 1 février 2003 18 avril 2005 à 12:23
L'application semble excellente.
Je travaille sur Access et tu pourrais vraiment m'aider simplement en me disant ou tu as trouvé la << macro Access >> trouvée sur le net...
Google me fait la tête...
J'aurais simplement à utiliser cette Macro...
Cordialement.
storan
Messages postés1Date d'inscriptionlundi 7 février 2005StatutMembreDernière intervention 4 avril 2005 4 avril 2005 à 16:13
tres tres bon , ma fait economiser pas mal d heures de travail !
cs_DonPedro
Messages postés1Date d'inscriptionmardi 10 juin 2003StatutMembreDernière intervention15 juillet 2004 15 juil. 2004 à 10:31
Excellente contrib
trop fort
cs_jenial
Messages postés10Date d'inscriptionmercredi 5 juin 2002StatutMembreDernière intervention23 juillet 2004 22 déc. 2003 à 11:49
C trop bon,
c ce que je chercher, simplicité et efficacité,
Merci et meilleur voeux.
Jé
cs_Obelix
Messages postés3Date d'inscriptionsamedi 24 février 2001StatutMembreDernière intervention 7 avril 2003 3 avril 2003 à 07:25
EXCELLENT !!!!
Cela peut être exploité et modélisé pour l'exportation vers d'autres systèmes SQL via le moteur ADO (ODBC) par l'execution de réquetes !!!
18 avril 2009 à 21:48
18 avril 2009 à 21:35
et merci encore pour tout le dérangement et pour ta comprehension ; bonne nuit
18 avril 2009 à 15:28
- chaque ligne du fichier texte correspond à une ligne de la table Access (un enregistrement, une ligne dans la table), soit une personne par ligne du fichier texte ;
- Pour chaque ligne, il faut récupérer la première chaîne de caractères, considérant qu'elle contient 3 données : l'Id (identifiant numérique de la personne), son nom et son prénom. Si l'identifiant a toujours une longueur de 3, on se contente de récupérer les 3 premiers caractères, si sa longueur peut varier, il faut faire un test de numéricité du genre : "je lis chaque caractère en commençant par le premier, et tant qu'il s'agit d'un nombre je le récupère en tant que partie de l'identifiant, dès que je trouve une lettre, c'est la première lettre du groupe nom et prénom". Plus difficile est de distinguer le prénom, là on retombe sur mes premières explications : il faut un séparateur, ou au moins une constante pour savoir ou commence le prénom. Le nom c'est facile, c'est après l'identifiant numérique, le prénom, s'il n'y a pas d'espace comment fait-on pour savoir qu'il s'agit de sa première lettre ?
Nota : sur tes deux lignes d'exemples : ligne 1 il y aurait 7 champs, et ligne 2 il n'y en aurait que 6, il faudra faire en sorte que le code s'attende a ne rien avoir à mettre pour certains champs.
En espérant apporter quelques éclaircissements.
18 avril 2009 à 11:40
369nomprenomdupersonne jhuy jhhhh 33 oplk
246mlpolkoijkjdcbnhgyybg bbbbbbbbbvgfggg 05 bgfg
...
... etc
la table "table1" par exemple à 12 champs par exemple
champ1"num cart" longueur 3, type numérique
champ2"nom et prenom" longueur 56, type alphanumériq
champ3"adress" long93, tye alph num
..
..
etc
tu regarde ici comment affecter seulement "369" dans " num cart" et le reste cad "nomprenomdupersonne....." dans " nom et prenom" et ainsi de suite
j'éspère bien que tu as compris maintenant mon problème
la table est déja créee dan access et elles bien définie
avec les type et les longueur,
le fichier .txt est là mais les données collées et il faux les séparer dans la table access.et merci encore pour mon dérangement
17 avril 2009 à 22:47
17 avril 2009 à 22:07
15 avril 2009 à 21:41
10 avril 2009 à 21:12
effectivement il est possible de créer une base de donnée Access en VB, puis dans la base créée, créer des tables de donnée en créant la structure par le code, puis ajouter dans les données dans les tables (c'est le processus complet, mais pas toujours le plus approprié. Il est souvent plus rapide d'utiliser une base Access déjà créée avec Access, dans laquelle on a déjà créé les tables (en définissant les champs avec l'éditeur d'Access). Dans ce cas, en VB, on se contente de manipuler les données des tables (ajout, suppressions, modifications). Pour les données, si elle se présentent en vrac sous la forme d'un texte, il faudra dans tous les cas définir un séparateur, toujours un caractère particulier (imprimable ou non - cela peut être un espace). On peut faire beaucoup de choses, il suffit de s'y mettre...
10 avril 2009 à 18:41
longs, et qui ne sont pas séparés ni aves des ',' ni avec des ";", et merci encore
3 août 2006 à 17:10
super source,
il manque la gestion des champs de type Objet OLE (type de champ 11)
merci pour le travail
A bientot
ios
3 avril 2006 à 23:37
Merci pour ta source c' se que je cherchais, cool super en +
sa marche trés bien. 10/10 sa le vaux bien.
A bientot.
:[ZelTroN2K3]:
Email: zeltron2k3@wanadoo.fr
cite: http://zeltron2k3.ath.cx
25 nov. 2005 à 10:28
12 juil. 2005 à 01:06
primo ton application é génial
secondo il me l'erreur de dépassement de capacité je voix pas pq, é ce du fichier text ou autre chose..........? je c pa ?
si tu pouvait ajouter l'option de choisir l'ordre des champs alors la ca va être tros cool.
mé bravo c ce ke je cherche. :)
9 mai 2005 à 12:30
Marche bien , facile à utiliser.
Quelques petits détails:
- La conversion des BOOLEENS en entiers (long?)
- La conversion des MONETAIRES se fait avec une
virgule dans le texte alors que MySql accepte un point.
encore BRAVO !
JO
22 avril 2005 à 15:28
Ca vaut bien une bonne note !
18 avril 2005 à 12:23
Je travaille sur Access et tu pourrais vraiment m'aider simplement en me disant ou tu as trouvé la << macro Access >> trouvée sur le net...
Google me fait la tête...
J'aurais simplement à utiliser cette Macro...
Cordialement.
4 avril 2005 à 16:13
15 juil. 2004 à 10:31
trop fort
22 déc. 2003 à 11:49
c ce que je chercher, simplicité et efficacité,
Merci et meilleur voeux.
Jé
3 avril 2003 à 07:25
Cela peut être exploité et modélisé pour l'exportation vers d'autres systèmes SQL via le moteur ADO (ODBC) par l'execution de réquetes !!!
Encore bravo !!!
Pat