Convertisseur bdd access (mdb) au format Json avec C#

Signaler
Messages postés
4
Date d'inscription
lundi 17 août 2020
Statut
Membre
Dernière intervention
24 août 2020
-
Messages postés
4
Date d'inscription
lundi 17 août 2020
Statut
Membre
Dernière intervention
24 août 2020
-
Bonjour,

Je cherche un moyen, des conseils pour pouvoir écrire un programme en C# qui de converti n'importe quelle bdd access (.mdb) au format Json.

Je ne sais pas par où commencer et comment aborder la chose n'ayant que très peu de connaissance en matière de bdd.
mes recherches sur le sujet m'ont plus embrouillé qu'autre chose alors je me tourne espérant trouver plus de clarté.

Y'a t'il un moyen simple de pouvoir lire toute les tables d'un fichier .mdb et de les convertir directement en .json ou vais-je devoir passer par un code qui doit différencier chaque partie de ma base de donné (tables, colonnes, lignes, type de valeur...) pour bien les trier une par une et les passer au format json ?

Je ne me rend pas bien compte de l'ampleur du travail que cela requiert ni de la méthode permettant de faire cela.

Merci pour votre aide

5 réponses

Messages postés
15116
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
19 novembre 2020
614
Bonsoir

le json c'est un fichier texte dans lequel tu peux mettre un peu ce que tu veux.

Donc pour commencer à essayer de te répondre, il faut savoir ce que tu compte y mettre:
  • La structure de chaque table (le noms des champs, leurs types, leurs propriétés, les relations etc....)
  • Les données de chaque tables
  • Les 2 propositions précédentes
  • Autre chose (à préciser bien sûr)


A noter tout de même que le format mdb est obsolète, depuis Access 2007 (y'a 13 ans quand même) c'est accdb.
Messages postés
4
Date d'inscription
lundi 17 août 2020
Statut
Membre
Dernière intervention
24 août 2020

Bonjour et merci,

J'ai eu l'occasion de voir un aperçu du résultat que j'attend via un convertisseur web:
[
{
"name":"ACCESSRIGHTS",
"columns":[
{
"name":"AR_U_ID",
"type":"LONG",
"size":4
},
{
"name":"AR_R_ID",
"type":"DOUBLE",
"size":8
}
],
"data":[
[
11,
0.0
],...
...
...

Mon fichier mdb contient une dizaine de tables ne contenant que des colonnes, pour l'exemple je me contenterais que d'un programme traitant des fichier mdb avec un nombre x de tables, colonnes et données.

Le fichier json à obtenir me semble très clair, il s'agit pour moi de comprendre comment accéder puis manipuler le contenu du .mbd

de plus, je ne comprend pas a quoi se rapport "size" ni son utilité
Messages postés
15116
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
19 novembre 2020
614
Donc tu veux la structure des tables.
Y'a un code ici qui permet de récupérer le nom des tables.
https://codes-sources.commentcamarche.net/source/30255-recuperer-le-nom-des-tables-d-une-base-de-donnees-access-et-afficher-dans-une-listbox

Pour la structure, j'ai pas trouvé pour l'instant et je n'ai pas trop le temps ce soir.


L'information size est le nombre d'octets utilisés, un long c'est 4 octets
Messages postés
4
Date d'inscription
lundi 17 août 2020
Statut
Membre
Dernière intervention
24 août 2020

Bonsoir,

Je comprends mieux pour size merci

Pour le code de récupération de tables je ne comprends pas a quoi ce rapporte:
tableCheckedListBox.DataSource = t;
tableCheckedListBox.DisplayMember = "TABLE_NAME";
listBox1.DataSource = t;
listBox1.DisplayMember = "TABLE_NAME";
où j'ai des erreurs car les noms de listbox1 et tableCheckedListBox n'existent pas (CS0103)

je vais voir ce qu'est une listbox...

Encore merci pour votre temps
Messages postés
15116
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
19 novembre 2020
614
je vais voir ce qu'est une listbox...

Avant de te lancer dans un projet "ambitieux", il aurait été judicieux d'apprendre les bases de C#.

Je te conseille, très fortement, de laisser de coté ton projet quelques jours, le temps de suivre un cours en ligne.
Celui de Tahé est très bien https://tahe.developpez.com/dotnet/csharp/
Messages postés
4
Date d'inscription
lundi 17 août 2020
Statut
Membre
Dernière intervention
24 août 2020

Bonjour,

Ouai je vais faire ça.

Finalement je suis parti sur python j'ai presque fini, il me manque plus qu'a comprendre comment fonctionne les "type" et "size" json, et je n'arrive pas à lire la dernière ligne de mes tables access (annotées '*').

Je vais pas demander d'aide de suite je pense pour ça et pour clôturer le post j'attendrais peut être d'avoir réussi en c#.

Merci encore