Avatar billede Kim Neesgaard Seniormester
06. januar 2004 - 21:18 Der er 9 kommentarer og
1 løsning

Komprimer en Access database med password

I et tidligere spørgsmål (http://www.eksperten.dk/spm/223136) er der et svar på, hvordan man komprimerer en Access database udelukkende fra Visual Basic (altså uden at åbne Access) og det virker perfekt:

Dim Jro    As New JetEngine
Jro.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\temp\db.mdb", "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\temp\new_db.mdb"

Jeg har imidlertid en Access database med et PASSWORD, og når jeg forsøger ovenstående, får jeg fejlmeldingen:

Run-time error ....
Adgangskoden er ikke gyldig

Hvirdan laver man denne kompression af en database med password?
Avatar billede terry Ekspert
07. januar 2004 - 13:40 #1
You obvioulsy need to include the database password in your connection string.


The CompactDatabase method has this syntax
CompactDatabase olddb, newdb [, locale [, options [, password]]]
Avatar billede terry Ekspert
07. januar 2004 - 13:46 #2
neesgaard> actually I am not sure that it is necessary to include provider!

This may be enough

Dim Jro    As New JetEngine
Jro.CompactDatabase "c:\temp\db.mdb", "c:\temp\new_db.mdb",,,"Password"
Avatar billede Kim Neesgaard Seniormester
07. januar 2004 - 21:23 #3
Når jeg gør dette, får jeg meddelelsen:

Compile error:
Wrong number of arguments or invalid property assignment

også selvom jeg ændrer antallet af kommaer?
Avatar billede terry Ekspert
07. januar 2004 - 21:52 #4
you can see information on it here, although the example deosnt include a password
Avatar billede terry Ekspert
07. januar 2004 - 21:53 #5
BUT!!!! Here is the problem I think!

The string ";pwd=" must precede the actual password. If you include a password setting in locale, this setting is ignored.
Avatar billede Kim Neesgaard Seniormester
07. januar 2004 - 22:07 #6
Hmm - den giver mig stadigvæk samme fejlmelding?
Avatar billede terry Ekspert
08. januar 2004 - 10:55 #7
I'll take a look at it if you like? NOSPAMeksperten@santhell.dkNOSPAM

you need to remove NOSPAM

Please ZIP whatever you send!
Avatar billede Kim Neesgaard Seniormester
08. januar 2004 - 11:24 #8
Mange tak - det er nu sendt! Undskyld - jeg glemte at zippe, men filerne er meget små.
Avatar billede Kim Neesgaard Seniormester
08. januar 2004 - 18:35 #9
Her er løsningen, som Terry kom frem til:

Indsæt referencen Microsoft DAO 3.6 Object Library i VB projektet og brug følgende kode:

DBEngine.CompactDatabase "c:\bibliotek1\Backup.mdb", _
"c:\bibliotek1\New_compact_db.mdb", , , ";pwd=xx"
Avatar billede terry Ekspert
08. januar 2004 - 19:50 #10
tak :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester