Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Base Bientôt à 2 Go ! [ Base de données / ADO.NET ] (miniheli)

samedi 1 décembre 2007 à 16:03:15 | Base Bientôt à 2 Go !

miniheli

Bonjour à tous,

Je suis en train de déveloper une application qui interroge une BDD Access.

Au début, cette base ne fesait que 8300 Ko (il n'y a que des tables liées ODBC).

C'est mon Appli qui contient les requêques en SQL. Celle-ci créée et efface les tables dont elle a besoin aucours de son utilisation. Mais toute table créée est effacée.

Néanmoins, la taille de la base ne cesse de gonfler au fur et à mesure des débogages.

Je suis à 1,6 Go alors qu'il n'y a pas plus de tables et aucune requête stockée.

Qu'est-ce qui prend toute cette place ?

Comment faire pour retrouver la taille initiale de ma base après chaque utilisation de mon appli ?

Puis-je éberger mes tables (liées ODBC) dans un autre SGBD (gratuit si possible) ?

Je ne sais pas comment faire mais il me semble que SQL Server 2005 Express Edition est envisageable.

Si c'est possible, connaissez-vous un lien qui explique comment faire migrer les tables de Access vers SQL Server, puis comment adapter le code VB de l'application pour se connecter à cette nouvelle base.

D'avance merci à tous.

Guillaume.


samedi 1 décembre 2007 à 16:17:11 | Re : Base Bientôt à 2 Go !

Exploreur

Membre Club
Salut,

Il te faudrait faire un compactage de ta base de donnée...Regarde sur le site et sur Codyx.org, il y a des sources et de snippets....

Maitenant tu peux compacter ta base de donnée directement dans access aussi, mais c'est manuel...

A+
Exploreur

 Linux a un noyau, Windows un pépin

 


lundi 3 décembre 2007 à 15:26:10 | Re : Base Bientôt à 2 Go !

Molenn

Sinon, je m'étais fait un petit VBScript, adapté de bout de code trouvé à droite à gauche, pour compacter une base de données (utile si tu n'as pas ACCESS sur le poste qui fait tourner ton appli, sinon, faut pas s'embêter, dans ACESS, menu Outils\Compacter et hop ^^)

'========================================================================================
'
' NOM :    Compactage de la base de donnée Molenn.mdb
'
' AUTEUR:    Molenn
' DATE  :
'
' COMMENTAIRE :    Script permettant de compacter une base de données lorsque seul
'         le runtime ACCESS est installé (et donc le menu de compactage non disponible)
'========================================================================================

'****************************************************************************************
'Mise à jour du Script si la base de données a changé de nom :
'il suffit de mettre à jour la variable BDDNom à la ligne 15 du script
const BDDNom = "Molenn.mdb"
'****************************************************************************************


'****************************************************************************************
'Initialisation
'****************************************************************************************

'Détermination du chemin relatif du script (recherche du dernier "\" dans le chemin du script)
CheminScript = WScript.ScriptFullName
LongueurChemin = Len(CheminScript)
For i = 1 To LongueurChemin
   Temp = InStr(i,CheminScript,"\")
   If Temp = 0 Then
      Exit For
      Else
      i = Temp
   End if
Next
CheminScript = Left(CheminScript,i-1)

'Vérification de la présence de la base et de son statut
Set ObjFSO = CreateObject("Scripting.FileSystemObject")
   'Présence de la base de données
If Not (ObjFSO.FileExists(cheminscript & BDDNom)) Then ' Verification de la Présence de la base
    MsgBox "Base Introuvable à l'endroit spécifié", vbCritical + vbOKOnly, "Erreur"
    WScript.Quit(-1)
End If
   'Statut de la base de données : si ouverte, fin du script
If ObjFSO.FileExists(Mid(cheminscript & BDDNom, 1, Len(cheminscript & BDDNom) - 4) & ".ldb") Then ' Verification de la Présence du Fichier .ldb
    MsgBox "La Base est déja ouverte, Impossible de poursuivre", vbCritical + vbOKOnly, "Erreur"
    WScript.Quit(-1)
End If

'Compactage de la base de données
Call Compactage(CheminScript, BDDNom)

MsgBox "La Base de Donnée " & BDDNom & " est compactée.", vbInformation, "Compactage"
'****************************************************************************************
'Fin du script
'****************************************************************************************


'****************************************************************************************
'Fonction de compactage
'****************************************************************************************
'Principe : Copie compactée de la base, puis remplacement de la base d'origine par la copie
Function Compactage(Chemin,Nom)

BDDSource = Chemin & Nom
BBDTemporaire = Chemin & "Temp.mdb"

Set ObjFSO = CreateObject("Scripting.FileSystemObject")
Set ObjJRO = CreateObject("Jro.JetEngine")
ObjJRO.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & BDDSource & ";Jet OLEDB:Database Password=", "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & BBDTemporaire & ";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Password="
ObjFSO.DeleteFile(BDDSource)
ObjFSO.MoveFile BBDTemporaire, BDDSource
set ObjJRO = Nothing
set ObjFSO = Nothing

End Function
'****************************************************************************************
'Fin de la fonction
'****************************************************************************************

Tu colles le script dans le même répertoire que ta base de données, tu changes le nom de la constante pour mettre le nom de ta base, et tu fais un double-clic sur le script.
Hop là, base compactée.

Molenn



Cette discussion est classé dans : base, sql, tables, go, bientôt


Répondre à ce message

Sujets en rapport avec ce message

Urg: Comment attacher des tables sql dans une base access via VB [ par Webmineur ] Urg: Comment attacher des tables sql server dans une base access via VB ?si quelqu'un a une idée, je suis preneur !merciA+Vincent Tables SQL attachées dans Access (2000) [ par microdav ] Bonjour , je recherche code VB permettant de creer des tables Attachées dans une base Access, via ODBC;Dans 2 cas : - Soit je me trouve dans la base Tables SQL attachées dans Access (2000) [ par microdav ] Bonjour , je recherche code VB permettant de creer des tables Attachées dans une base Access, via ODBC;Dans 2 cas : - Soit je me trouve dans la base Tables SQL attachées dans Access (2000) [ par microdav ] Bonjour , je recherche code VB permettant de creer des tables Attachées dans une base Access, via ODBC;Dans 2 cas : - Soit je me trouve dans la base Tables SQL attachées dans Access (2000) [ par microdav ] Bonjour , je recherche code VB permettant de creer des tables Attachées dans une base Access, via ODBC;Dans 2 cas : - Soit je me trouve dans la base Naviguer dans la base de données [ par rastaprogram ] J'ai un petit problème pour une requète SQL. J'aimerai sélectionner le nom des mes tables dans ma base de données. Ma requete va etre de ce type : Afficher les tables d'une ou plusieurs bases sql [ par Rouk ] Bonjour,Je developpe en vb.net avec une connexion a une base Sql.Je souhaiterai afficher dans une ComboBox la liste de base Sql et suite a cela affic ré-attacher des tables sql server à une base access [ par roudadoux ] j'ai fait une mise à jour de l'attache des tables car j'ai fait des ajouts de colonnes dans certaines tables. A la suite de cela désormais quand j'ouv Recherche SQL avec plusieurs bases [ par Omega15 ] Bonjour,Je voudrais savoir si il est possible avec une seule requete de faire un lien entre 3 tables de 2 base differentes.EX:Un base avec un CodeOuti Liste des tables de ma base de données SQL [ par picinounours51 ] Bonjour, je suis actuellement à la recherche d'un moyen afin de pouvoir récupéré le nom de mes tables d'une base de données.En recherchant, il m'avait


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,359 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.