2010-11-18 3 views
7

ho il seguente codice:Impossibile trovare ISAM installabile

string excelConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C:\db\suc.xls; Extended Properties=""Excel 12.0;HDR=YES;"""; 

// Create Connection to Excel Workbook 
using (OleDbConnection connection = 
      new OleDbConnection(excelConnectionString)) 
{ 
    OleDbCommand command = new OleDbCommand 
      ("Select * FROM [Sheet1$]", connection); 

    connection.Open(); 

e ottengo il seguente errore:

Impossibile trovare ISAM installabile.

allo connection.Open(). Qualche idea ?

+0

possibile duplicato di [System.Data.OleDb.OleDbException: Impossibile trovare ISAM installabili] (http://stackoverflow.com/questions/11562267/system-data-oledb-oledbexception-could- non-find-installable-isam) – bummi

risposta

5

Non c'è nessuna versione a 64 bit dei driver Jet OLEDB, quindi se si esegue questo su un sistema operativo a 64 bit potrebbe essere necessario indirizzare x86 nella vostra applicazione .NET e non Any CPU:

alt text

+8

Non ho risolto nulla per me ... –

+3

Ho risolto questo problema inserendo virgolette sull'origine dati. Vedi la risposta qui: http://stackoverflow.com/questions/512143/error-could-not-find-installable-isam/512187#512187 – Charlino

+4

Perché è contrassegnata come risposta accettata? – Josh

1

Stavo ricevendo questo problema cercando di aprire un file xls con un provider più recente. Ho risolto il problema modificando le proprietà estese da

Extended Properties="Excel 11.0;" 

a

Extended Properties="Excel 8.0;" 

Credo Excel 11 si aspetta un file di stile xlsx.

14

Ho avuto lo stesso errore, ma nessuno dei suggerimenti sopra ha funzionato. Nel mio caso tutto quello che dovevo fare era di cambiare la mia stringa di connessione a questo:

string connStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + FilePath + ";Extended Properties='Excel 12.0;IMEX=1;'"; 

Annotare la citazione singolo intorno l'attributo Proprietà estese ('Excel 12.0; IMEX = 1;'). Una volta che ho aggiunto quelle citazioni singole l'errore è scomparso!

0

uso Extended properties="\excel 8.0;