approche d'une base de données

Climaudo

XLDnaute Occasionnel
bonjour à tous,

Je prépare actuellement un projet de base de données pour mon boulot. Nous fonctionnons en réseau mais n'avons pas l'utilisation d'access.

La base de données que je souhaite mettre en place servira à la gestion des personnel. Le but est que l'ensemble des gestionnaires (environ 10 personnes) puissent utiliser la bdd en simultané.

Il faut savoir que chaque administré possède un numéro unique et le fichier de bdd se présente sous forme d'une table par onglet avec comme repère de l'individu son numéro.

Je pensais donc à une application utilisateur installé sur chaque PC. Mais deux approches semblent s'offrir à moi :
1 - soit à l'ouverture de l'application, copier totalement les tables sur le fichier d'application et travailler avec ces copies, puis à la fermeture transfèrer les nouvelles données dans la bdd. Mais dans ce cas, pas de possibilité d'utilisation des nouvelles données insérées par les autres utilisateurs entre temps et risque de doublons ou de conflits entre les données saisies

2 - soit travailler avec le fichier bdd en le laissant fermé (en utilisant les macros glanés sur le site notamment sur les wiki).

Pour cette seconde solution, je me demande si une lecture de la bdd simultanée par plusieurs utilisateurs ou une copie de données ne risquent pas de provoquer un bug, mais également ralentir le fonctionnement de l'application du fait des "allers-retours" vers le fichier fermé.

Voilà, je souhaiterai avoir vos avis éclairés sur la meilleure approche à adopter avant de "tenter" de développer l'application, ou mieux me proposer une approche plus pratique ou adapté pour cette bdd

Merci à vous
Climaudo
 
C

Compte Supprimé 979

Guest
Re : approche d'une base de données

Salut Climaudo,

De qu'elle façon veux-tu tu "attaquer" ta bdd, mode ODBC ou ADODB ?

Car en ODBC, tu rappatries effectivement tous les enregistrements sur chaque poste demandant une ouverture.

Alors qu'en ADODB c'est le serveur qui fait le travail et te renvoie seulement les données dont tu as besoin.

Fait des recherches sur le net à ce sujet, tu devrais trouver des trucs intéressants.

A+
 

Climaudo

XLDnaute Occasionnel
Re : approche d'une base de données

Bonsoir BrunoM45

je dois avouer que ces modes ODBC et ADODB me sont parfaitement inconnus
Pourrais-tu m'expliquer succintement à quoi cela correspond ? sachant que je n'ai pas tous les droits sur ce réseau et ne peut donc pas utiliser de ressources particulières
(je vais de mon côté en effet faire une recherche internet sur cela)

Merci à toi
 
C

Compte Supprimé 979

Guest
Re : approche d'une base de données

ODBC = Open DataBase Connectivity
c'est un protocol permettant le transfert d'informations issues de bases de données.
Une passerelle ODBC se comporte comme une sorte de "sas" qui sert à faire transiter des données entre un logiciel et un autre.

DAO = Data Access Objects

ADO = ActiveX Data Objects
 

Climaudo

XLDnaute Occasionnel
Re : approche d'une base de données

re

merci pour l'explication
je regarde depuis un moment sur internet ce que je peux faire en ODBC, mais j'ai peur que mes droits et mon niveau de programmation soient limités pour pouvoir le faire. Il s'agit d'un réseau assez "fermé".
Est-il vraiment indispensable de passer par ces modes pour créer une base de données ?
Le fait d'utiliser ces modes me permettrait-il de résoudre mon problème d'accessibilité aux informations par plusieurs utilisateurs simultanément, car dans ce cas je vais être obligé d'y passer.

mes questions partent un peu en tout sens, mais je préfère commencer par cette étape avant d'entamer quelque chose qui ne fonctionnera pas

merci
 

chris

XLDnaute Barbatruc
Re : approche d'une base de données

Bonjour
Mais finalement comptes tu ou non utiliser une base Access ?
Si oui et si elle doit être mises à jour via Excel, c'est effectivement la solution ADO expliquée dans le wiki de Michel qui est une bonne piste.
Une base Access est multi accès : si les requêtes de MAJ sont faite correctement il ne devrait pas y avoir de PB.
 

Climaudo

XLDnaute Occasionnel
Re : approche d'une base de données

bonsoir Chris

Access serait la solution idéale, malheureusement je ne l'ai pas au boulot, interdit par l'administrateur aucun PC n'est équipé. C'est pour cela que je souhaite utiliser un classeur Excel en tant que bdd avec un onglet pour chaque table tout en l'utilisant un peu comme Access

Merci
 
C

Compte Supprimé 979

Guest
Re : approche d'une base de données

Climaudo à dit:
bonsoir Chris
Access serait la solution idéale, malheureusement je ne l'ai pas au boulot, interdit par l'administrateur aucun PC n'est équipé. C'est pour cela que je souhaite utiliser un classeur Excel en tant que bdd avec un onglet pour chaque table tout en l'utilisant un peu comme Access
Merci

Est-ce que {(["l'Administrateur"])}
pan.gif
t'a donné une raison pour cette interdiction !?

Je suis Responsable Informatique dans ma boite et administrateur réseau en autre.

J'ai une licence Office Développeur sur mon poste.

Ensuite chaque poste peut avoir un Runtime d'installé, avec une base Frontale ! Il n'y a aucun problème (puisqu'il y a 1 licence développeur) !

Enfin bon, moi ce que j'en dis !

Parce que ça va être galère de traiter la Bdd par onglet dans un classeur :rolleyes:
 

Climaudo

XLDnaute Occasionnel
Re : approche d'une base de données

En fait nous n'avons pas d'explication claire.
Je bosse dans une administration dépendant du ministère de la défense.
Nous disposons d'une base de données générale mais qui n'est pas très exploitable car le logiciel a été développé il y a déjà quelques années.
Cependant, nous avons l'autorisation de disposer d'une base de données nominative pour chaque unité mais sous excel (déclarées à la CNIL et tout ce qu'il faut).
C'est je pense un moyen de contrôle pour éviter tout abus (même si je suis persuadé que même sans access, cela n'empêche pas la multiplication des bdd et les risques de fuites de données).

Voilà pourquoi je me retrouve "obligé" de créer cela sous excel
merci
 

michel_m

XLDnaute Accro
Re : approche d'une base de données

Bonjour,

Le pb en Excel-Excel est effectivement l'accès simultané.

La solution que j'emploierais sans l'autorisation d'utiliser access (nota: on peut créer une base au format access sans avoir access d'installé mais...) est ADO+SQL avec la BDD fermée. car tu vas te connecter, effectuer ta requête et de déconnecter, ce qui est très rapide avec SQL.
Il faudra peut-être utiliser le mode pessimiste (a étudier)

Autre chose, point de vue sécurité, on ne peut pas travailler en "fermé" si ta bdd-Excel fermé possède un mot de passe.

En espèrant que ces éléments t'aideront dans ton choix

Bon, n'étant ni chef, ni responsable, ni administrateur, ni... (au choix), je te laisse car j'ai pas mal de boulot urgent pour la semaine dernière...
 

Climaudo

XLDnaute Occasionnel
Re : approche d'une base de données

Bonjour le forum, michel_m,

merci pour cette piste. Je vais effectuer des recherches complémentaires sur SQL. Selon ton approche, cela me paraît être la meilleure solution (en me fiant à ton talent sur le site).

Bon, ben y'a plus qu'à s'y mettre.

Je suis toujours ouvert à toute autre approche.

Merci à vous
 

michel_m

XLDnaute Accro
Re : approche d'une base de données

Re,

Bon! dans ta database futur fichier fermé n'oublie pas ces quelques trucs qui te faciliteront la vie:

1/ nom de champs courts (mais explicites)
2/ Pas d'espaces, apostrophes, guillemets, caractères spéciaux dans les noms de champs
3/ 1° colonne réservé à un identifiant unique (comme la clé primaire d'Access)

enfin:
Nomme la database: peu importe si elle n'est pas remplie par ex: A1: H35000. Ca t'évitera de trimbaler des trucs compliqués comme feuill1$(A1:H30000).

et aussi:
Dans les archives du forum (et peut-être dans mon grenier), il y a une démo de @+Thierry évitant l'accès simultané genre message "veuillez recommencer plus tard " que je t'envoie si je la trouve...


Bon courage et n'hésites pas...
 

Climaudo

XLDnaute Occasionnel
Re : approche d'une base de données

re,

Merci pour ces quelques conseils que je vais m'employer à utiliser correctement.

Je vais chercher sur le forum cette démo dont tu me parles qui me semble parfaitement répondre à mon inquiétude sur les accès simultanés.

Et ne t'inquiète pas, je pense qu'il y a de fortes chances que je n'hésite pas à refaire appel à vous ;) .

Encore merci
 

michel_m

XLDnaute Accro
Re : approche d'une base de données

re re

ci dessous test de fichier ouvert par notre ami Didier_mdf (Voir son super-site Excel: myDearFriend! Excel Pages - Mon univers Excel... - Mon univers Excel...

Function FichOuvert(F As String) As Boolean
'Auteur: Didier_mdf sur forum www.Excel-downloads.com (merci)
Dim Wk As Workbook
On Error Resume Next
Set Wk = Workbooks(F)
On Error GoTo 0
FichOuvert = Not Wk Is Nothing
End Function

fichier ouvert => true


Bonne soirée
 

Climaudo

XLDnaute Occasionnel
Re : approche d'une base de données

bonjour le forum, michel

Michel, je n'ai pas trop saisi ton dernier message (même si je me suis empressé d'aller visiter le site de mDF, vraiment intéressant)

Edit : je retire ce que je viens d'écrire, désolé, j'ai pas les yeux en face des trous. cette procédure permet de vérifier si le fichier est déjà en accès. Merci
@+
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 370
Messages
2 087 693
Membres
103 641
dernier inscrit
anouarkecita2