+ Rispondi al messaggio
Pagina 1 di 2 12 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15

Vb.net Errore: Impossibile trovare ISAM installabile

  1. #1
    Maxton2110 non è in linea Novello
    Post
    10
    Like Inviati  
    0
    Like Ricevuti  
    0
    Sto cercando di imparare da zero a utilizzare i database access, e sto seguendo una guida, purtroppo mi sono bloccato quasi subito per quest errore, "Impossibile trovare ISAM installabile."
    Ho installato Office 2010 e visual studio 2012, sapreste aiutarmi?



    Imports ADOX
    Imports System.Data.OleDb
    
    Public Class ProvaDatabase
    
        Dim connessione As ADOX.Catalog = New ADOX.Catalog 'crea un nuovo oggetto connessione di tipo ADOX.Catalog
    
        Dim archivio As New OleDb.OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;DataSource=" + System.Environment.GetFolderPath(System.Environment.SpecialFolder.Desktop) + "/provadb.mdb")
    
    
        Private Sub ButtonF1_Click(sender As Object, e As EventArgs) Handles ButtonF1.Click
    
            connessione.Create("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + System.Environment.GetFolderPath(System.Environment.SpecialFolder.Desktop) + "/provadb.mdb;Jet OLEDB:Engine Type=5") 'Crea un nuovo database nella directory del desktop con nome provola.mdb
    
        End Sub
    
    
        Private Sub ButtonF2_Click(sender As Object, e As EventArgs) Handles ButtonF2.Click
    
            Dim com As New OleDb.OleDbCommand("CREATE TABLE [Docenti] ([Nome] TEXT(255),[Cognome]TEXT(255),[Luogo di nascita] TEXT(255))", archivio)
    
            archivio.Open() 'Apri la connessione con il database - Riga errore
            com.ExecuteNonQuery() 'Esegui comando SQL
            archivio.Close() 'Chiudi la connessione con il database
    
        End Sub
    
    End Class
    

  2. #2
    patel45 non è in linea Scolaretto
    Post
    473
    Like Inviati  
    0
    Like Ricevuti  
    0
    devi aprire la connessione, non l'archivio

  3. #3
    L'avatar di AntonioG
    AntonioG non è in linea Moderatore Globale Ultimo blog: Commodore 64 e Codemotion
    Post
    17,480
    Blogs
    5
    Like Inviati  
    6
    Like Ricevuti  
    34
    @patel .... In questo caso ha chiamato archivio la connessione, come puoi facilmente leggere.

    @maxton ... stai compilando in modalità x86 ?

    E comunque, dai un'occhiata ad un libro di ADO.NET perché il codice che stai utilizzando è abbastanza confuso. Perché crei le tabelle nel programma con ADOX? Dovresti averle già pronte nel tuo db.
    ℹ️ Leggi di più su AntonioG ...

  4. #4
    L'avatar di alextyx
    alextyx non è in linea Moderatore Globale
    Post
    2,600
    Like Inviati  
    0
    Like Ricevuti  
    0
    Come suggerisce Antonio, probabilmente potresti avere qualche problema tra motore installato e chiamata dello stesso nella connessione. Se non ricordo male, ma invito a una verifica, stai chiamando un provider che non è quello classico per il quale si deve obbligatoriamente compilare X86, tuttavia è possibile che tu debba ancora installare il provider cui ti riferisci, o, naturalmente, che ci siano anche altri errori che non mi saltano all'occhio e che possono provocare quel messaggio d'errore.
    Cerca con google relativamente all'errore che ricevi e fai caso soprattutto alle modalità di compilazione e ai provider da installare. Secondo me trovi la risposta senza troppa difficoltà.
    ℹ️ Leggi di più su alextyx ...

  5. #5
    patel45 non è in linea Scolaretto
    Post
    473
    Like Inviati  
    0
    Like Ricevuti  
    0
    a me questa funziona
           Dim cat As ADOX.Catalog = New ADOX.Catalog
            Dim databaseName As String = "F:\Download\provadb.mdb"
            Dim con As New OleDb.OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source =" & databaseName)
            cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & databaseName & ";Jet OLEDB:Engine Type=5")
            Dim command As New OleDb.OleDbCommand("CREATE TABLE [Docenti] ([Nome] TEXT(255),[Cognome]TEXT(255),[Luogo di nascita] TEXT(255))", con)
    
            con.Open()
            command.ExecuteNonQuery()
            con.Close()
    

  6. #6
    L'avatar di AntonioG
    AntonioG non è in linea Moderatore Globale Ultimo blog: Commodore 64 e Codemotion
    Post
    17,480
    Blogs
    5
    Like Inviati  
    6
    Like Ricevuti  
    34
    Quote Originariamente inviato da patel45 Visualizza il messaggio
    a me questa funziona
    Tu hai chiamato l'oggetto con e lui archivio. Non è questo il problema.

    Tu usi il provider 4.0 e lui il provider 12.0

    Il problema è sicuramente legato al tipo di progetto (a 64 o 32 bit) o al tipo di installazione del provider e di Office (a 64 o 32 bit).
    ℹ️ Leggi di più su AntonioG ...

  7. #7
    Maxton2110 non è in linea Novello
    Post
    10
    Like Inviati  
    0
    Like Ricevuti  
    0
    Quote Originariamente inviato da AntonioG Visualizza il messaggio
    Tu hai chiamato l'oggetto con e lui archivio. Non è questo il problema.

    Tu usi il provider 4.0 e lui il provider 12.0

    Il problema è sicuramente legato al tipo di progetto (a 64 o 32 bit) o al tipo di installazione del provider e di Office (a 64 o 32 bit).
    Sto usando windows a 32 bit, sul progetto CPU di destinazione X86

  8. #8
    L'avatar di AntonioG
    AntonioG non è in linea Moderatore Globale Ultimo blog: Commodore 64 e Codemotion
    Post
    17,480
    Blogs
    5
    Like Inviati  
    6
    Like Ricevuti  
    34
    E hai installato il provider a 32 bit?
    ℹ️ Leggi di più su AntonioG ...

  9. #9
    Maxton2110 non è in linea Novello
    Post
    10
    Like Inviati  
    0
    Like Ricevuti  
    0
    Quote Originariamente inviato da AntonioG Visualizza il messaggio
    E hai installato il provider a 32 bit?
    Scusa la mia ignoranza, ma cosa intendi per provider? Access è 32 bit

  10. #10
    Maxton2110 non è in linea Novello
    Post
    10
    Like Inviati  
    0
    Like Ricevuti  
    0
    Quote Originariamente inviato da patel45 Visualizza il messaggio
    a me questa funziona
           Dim cat As ADOX.Catalog = New ADOX.Catalog
            Dim databaseName As String = "F:\Download\provadb.mdb"
            Dim con As New OleDb.OleDbConnection("PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source =" & databaseName)
            cat.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & databaseName & ";Jet OLEDB:Engine Type=5")
            Dim command As New OleDb.OleDbCommand("CREATE TABLE [Docenti] ([Nome] TEXT(255),[Cognome]TEXT(255),[Luogo di nascita] TEXT(255))", con)
    
            con.Open()
            command.ExecuteNonQuery()
            con.Close()
    
    Questo codice mi funziona

+ Rispondi al messaggio
Pagina 1 di 2 12 ultimoultimo

Potrebbero interessarti anche ...

  1. Risposte: 1
    Ultimo Post: 25-02-2015, 09:02
  2. Error: Impossibile trovare ISAM installabile
    Da JOcondor nel forum Visual Basic 6
    Risposte: 5
    Ultimo Post: 06-08-2013, 17:30
  3. Errore runtime 3170 impossibile trovare ISAM installabile
    Da amanu86 nel forum Visual Basic 6
    Risposte: 3
    Ultimo Post: 15-09-2010, 15:19
  4. ISAM installabile
    Da WEM nel forum Visual Basic 6
    Risposte: 2
    Ultimo Post: 04-01-2007, 16:05
  5. Errore: Impossibile trovare un campo
    Da temerario nel forum ASP 3, ASP .Net
    Risposte: 2
    Ultimo Post: 17-05-2005, 13:06