IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Access Discussion :

Erreur " 'MSSysDB' introuvable "


Sujet :

Access

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    352
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 352
    Points : 181
    Points
    181
    Par défaut Erreur " 'MSSysDB' introuvable "
    Bonjour,

    Tout d'un coup sur une de mes bases de données, à l'ouverture, j'ai le message d'erreur suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    " Le moteur de base de données MS Jet n'a pas pu trouver l'objet 'MSSysDB'. Assurez-vous que l'objet existe ..."
    alors que à l'ouverture précédente tout fonctionnait.

    Comment résoudre ce problème?

    Jean-Pierre

  2. #2
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 869
    Points : 3 448
    Points
    3 448
    Par défaut
    Bonjour jeanpierre78,

    Ce message d'erreur indique généralement une base corrompue. MSysDb est une ligne dans MSysObjects qui doit être manquante dans ton cas.

    Une première chose à faire est compacter/réparer ta bd. Si tu n'as pas de résultat il y a ici une fonction pour recréer cette ligne. Je n'ai pas testé...

    Bonne journée
    Ce qui se conçoit bien s’énonce clairement et les mots pour le dire arrivent aisément. Nicolas Boileau
    Si tout est OK, n'oubliez pas de cliquer sur

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    352
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 352
    Points : 181
    Points
    181
    Par défaut
    Bonsoir,

    Merci pour la réponse. Lorsque je place le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    Public Function addmysydb()
     Dim dbs As Database
     'Set dbs = "\\C:\Users\DZN36X\Desktop\New SSP 2.accdb" 
     Set dbs = "\\D:\Mes Documents\Musculation\BD Access\ASC_Musculation_prog_old.mdb"
     Set rst = dbs.OpenRecordset(MSysObject, dbOpenDynaset)
     
     rst.MoveLast
     
     rst.Fields("Connect").Value = ""
     rst.Fields("Database").Value = ""
     rst.Fields("DateCreate").Value = ""
     rst.Fields("DateUpdate").Value = ""
     rst.Fields("Flags").Value = "-2147483648"
     rst.Fields("ForeignName").Value = ""
     rst.Fields("Id").Value = "268435456"
     rst.Fields("Lv").Value = ""
     rst.Fields("LvExtra").Value = ""
     rst.Fields("LvModule").Value = ""
     rst.Fields("LvProp").Value = "Long binary data"
     rst.Fields("Name").Value = "MSysDb"
     rst.Fields("Owner").Value = ""
     rst.Fields("ParentId").Value = "251658242"
     rst.Fields("RmtInfoLong").Value = ""
     rst.Fields("RmtInfoShort").Value = ""
     rst.Fields("Type").Value = "2"
     
     rst.Update
     End Function
    proposé par le lien dans une nouvelle BD, j'ai un message d'erreur sur la ligne qui défini la BD à réparer au lancement de la fonction.

    Heureusement, que j'ai placé les données dans un DD, la programmation dans une autre BD et que j'ai une sauvegarde. Mais j'aimerais bien connaître la méthode pour réparer une BD Corrompue.

    Jean-Pierre

  4. #4
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 869
    Points : 3 448
    Points
    3 448
    Par défaut
    Bonjour jeanpierre78,

    Premièrement je n'avais pas porté attention au code, mais je crois que ceci serait mieux:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    Public Function addmysydb()
     Dim dbs As DAO.Database
    Dim rst As DAO.Recordset
     'Set dbs = "\\C:\Users\DZN36X\Desktop\New SSP 2.accdb" 
     Set dbs = "\\D:\Mes Documents\Musculation\BD Access\ASC_Musculation_prog_old.mdb"
     Set rst = dbs.OpenRecordset(MSysObject, dbOpenDynaset)
     
     rst.MoveLast
     
     rst.Fields("Connect").Value = ""
     rst.Fields("Database").Value = ""
     rst.Fields("DateCreate").Value = ""
     rst.Fields("DateUpdate").Value = ""
     rst.Fields("Flags").Value = "-2147483648"
     rst.Fields("ForeignName").Value = ""
     rst.Fields("Id").Value = "268435456"
     rst.Fields("Lv").Value = ""
     rst.Fields("LvExtra").Value = ""
     rst.Fields("LvModule").Value = ""
     rst.Fields("LvProp").Value = "Long binary data"
     rst.Fields("Name").Value = "MSysDb"
     rst.Fields("Owner").Value = ""
     rst.Fields("ParentId").Value = "251658242"
     rst.Fields("RmtInfoLong").Value = ""
     rst.Fields("RmtInfoShort").Value = ""
     rst.Fields("Type").Value = "2"
     
     rst.Update
    rst.close
    Set rst = Nothing
    Set dbs = Nothing
     End Function
    Mais je ne crois pas que ce soit le problème.

    Quel est le message d'erreur?

    Un autre moyen de réparer est de tout réimporté dans une nouvelle base.

    Mieux que ça je ne sais pas, peut-être quelqu'un d'autre peut nous donner une autre solution et je suivrai attentivement la discussion pour savoir moi aussi.

    Bonne journée
    Ce qui se conçoit bien s’énonce clairement et les mots pour le dire arrivent aisément. Nicolas Boileau
    Si tout est OK, n'oubliez pas de cliquer sur

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    352
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 352
    Points : 181
    Points
    181
    Par défaut
    Bonjour,

    Au lancement de la fonction, le message d'erreur est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Erreur de compilation.
     
    Incompatibilité de type.
    sur la ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set dbs =  "\\D:\Mes Documents\Musculation\BD Access\ASC_Musculation_prog_old.mdb"
    sur le nom et le chemin de la base à réparer.

    Jean-Pierre

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    352
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 352
    Points : 181
    Points
    181
    Par défaut
    Bonjour,

    Si à partir d'une BD vide j'essaye d'importer les éléments (requêtes, formulaires, macros, états, ...), c'est impossible car j'ai le message d'erreur cité au début de la discussion.

    Jean-Pierre

  7. #7
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 869
    Points : 3 448
    Points
    3 448
    Par défaut
    Bonjour jeanpierre78,

    As-tu essayé un "decompile" d'Access. Tu as des exemples ici

    Bonne journée
    Ce qui se conçoit bien s’énonce clairement et les mots pour le dire arrivent aisément. Nicolas Boileau
    Si tout est OK, n'oubliez pas de cliquer sur

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    352
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 352
    Points : 181
    Points
    181
    Par défaut
    Bonjour,

    Lorsque j'essaie à partir d'une BD vide, d'importer les tables, formulaires, états, requêtes, ... , j'ai le message d'erreur cité au début.

    Lorsque je lance la commande DOS, proposée par le lien, adaptée au nom et à la place de la BD, j'ai le message d'erreur cité au début.

    Jean-Pierre

  9. #9
    Membre expert
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Octobre 2012
    Messages
    1 869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2012
    Messages : 1 869
    Points : 3 448
    Points
    3 448
    Par défaut
    Bonjour jeanpierre78,

    Désolé, je ne vois pas d'autres moyens. J’espère que tu avais des copies de ton application ou qu'un autre membre du forum à une solution à te proposer.

    Bonne journée
    Ce qui se conçoit bien s’énonce clairement et les mots pour le dire arrivent aisément. Nicolas Boileau
    Si tout est OK, n'oubliez pas de cliquer sur

  10. #10
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    352
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 352
    Points : 181
    Points
    181
    Par défaut
    Bonjour,

    Je me suis organisé comme suit :
    • une base de données *_data.mdb où il y a les tables lièe à la base *_prog.mdb
    • une base de données *_prog.mdb où il y a la programmation avec sauvegarde journalière des données
    • une sauvegarde de la base de données *_prog.mdb

    J'ai donc pu retrouver le tout, heureusement car dans cette BD j'ai 6 ans de gestion du club sportif.

    Jean-Pierre

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo