Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di giacomino_jack
    Registrato dal
    Feb 2002
    residenza
    Italy
    Messaggi
    202

    [VB6]+[ACCESS2000] Errore compattando DB

    Sto cercando di compattare dall'applicazione VB6 il DB Access collegato.
    Questo quello che faccio:

    1. Chiudo la connessione al DB (ADO)
    2. Rinomino il DB.mdb in DBOld.mdb
    3. Eseguo questi comandi:
    Set dbEngine = New JRO.JetEngine

    dbEngine.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=DBOld.mdb;Provider=Microsoft.Jet.OLEDB.4.0; Data Source=DB.mdb;Jet OLEDB:Engine Type=4"
    pero' ottengo questo errore:

    (Err. N. -2147467259) Impossibile eseguire l'operazione. Caratteristiche della presente versione non disponibili per database di formati precedenti.


    Qualche aiuto?

  2. #2
    DB.mdb che versione di access è?
    Vascello fantasma dei mentecatti nonchè baronetto della scara corona alcolica, piccolo spuccello di pezza dislessico e ubriaco- Colui che ha modificato l'orribile scritta - Gran Evacuatore Mentecatto - Tristo Mietitore Mentecatto chi usa uTonter danneggia anche te

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    34
    Non dovrebbe avere problemi di versione di acces. (io la uso per la 8 che per la 10).
    codice:
    'DBFile= pathDB + NameDB
    Function CompattaDB(ByVal DBFile As String) As Boolean
    
      Dim Rc                          As Boolean
      Dim m_Jro                       As Object
      Dim DB_Dest                     As String
    
      Rc = False 'Default
    
    On Error GoTo ERR_FUNCTION
      Set m_Jro = CreateObject("JRO.JetEngine")
    
      DB_Dest = Mid(DBFile, 1, Len(DBFile) - 4) & "_New"
    
      m_Jro.CompactDataBase "Provider=Microsoft.Jet.OLEDB.4.0;DataSource=" & DBFile, _
                            "Provider=Microsoft.Jet.OLEDB.4.0;DataSource=" & DB_Dest & " ; Jet OLEDB:Engine Type=5"
    
    'Cancella DBFile
    'Copia DB_Dest in DBFile
    'Cancella DB_Dest
      Rc = True
    
    END_FUNCTION:
      CompattaDB = Rc
      Exit Function
    
    ERR_FUNCTION:
      MsgBox Err.Number & " - " & Err.Description, vbCritical, "Compattazione DB"
      Rc = False
      Resume END_FUNCTION
    
    End Function
    Mauro

  4. #4
    Utente di HTML.it L'avatar di giacomino_jack
    Registrato dal
    Feb 2002
    residenza
    Italy
    Messaggi
    202
    Il DB.mdb e' un DB di Access 2000 (lo dicevo anche nel titolo... xegallo incominci a perder colpi??? Non e' da te!! )

    Ma OK.

    Mi è bastato sostituire
    ...;Jet OLEDB:Engine Type=4
    con

    ...;Jet OLEDB:Engine Type=5
    ma qualcumo sa qual'e' la differenza tra i type=4 e type = 5


    (L'ignoranza e' una brutta bestia.....)

    Grazie!!!

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    34
    Originariamente inviato da giacomino_jack
    ma qualcumo sa qual'e' la differenza tra i type=4 e type = 5


    (L'ignoranza e' una brutta bestia.....)

    Grazie!!!
    Leggendo qua e la in rete il
    codice:
    Type=4
    Serve per il DB versione 8 (97)
    Mentre
    codice:
    Type=5
    Serve per il DB versione 9 (2000) e superiori

    Mauro

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.