Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
"Impossibile trovare ISAM installabile."
mercoledì 26 agosto 2009 - 15.30
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Anonimo
Profilo
| Senior Member
392
messaggi | Data Invio:
mer 26 ago 2009 - 15:30
Cosa vuol dire?
Vi spiego il problema. Ho dei dati su alcuni fogli Excel, e li vorrei esportare su delle tabelle di un db in sql server 2005 express edition. Siccome quest'edizione di sql server non contiene il "data import/export wizard" allora ho cercato un po' in giro su internet per sapere se esiste un modo alternativo di importare/esportare dati. Ho trovato questo modo:
>Importare dati da Excel a SQL Server 2005 Express
>lunedì, 5 maggio 2008 09.55 by Marco Bellinaso
>
>Quando l'altro giorno mi è stato chiesto di importare i dati di un foglio Excel in una tabella di SQL Server 2005, mi son detto "no problem, lancio il >Data Import/Export wizard, e via". Purtroppo tale tool non è presente nella versione Express, dal momento che mancano anche i SQL Server >Integration Services (SSIS) and SQL Server Agent sui quali quel wizard si basa. Mi sembrava uno spreco installare la versione Standard solo per >questo, quindi ho cercato qualche soluzione alternativa. E' possibile ad esempio scrivere una macro VBA direttamente in Excel per ciclare sulle righe e >colonne, e inserire i dati in SQL Server tramite il vecchio Recordset di ADO...ma anche questo mi sembrava troppo lavoro per un compito così >semplice! La soluzione che ho adottato -- e che ha funzionato alla perfezione -- è stata di usare la funzione OPENROWSET, in questo modo:
>
>SELECT * INTO Negozi FROM
>OPENROWSET('Microsoft.Jet.OLEDB.4.0',
>'Excel 8.0;Database=c:\temp\DatiNegozi.xls', [Sheet1$])
>
>Questo codice prende tutti i dati presenti nel file XLS specificato (nel foglio Sheet1), e li copia in una nuova tabella chiamata Negozi. La prima riga >del foglio Excel dovrebbe essere di intestazione, ed è quella che il comando utilizzerà per estrarre i nomi dei campi da creare nella nuova tabella. Se >alcuni campi dovessero essere creati con un tipo diverso da quello desiderato (ad esempio float ancihè int, o varchar invece di nvarchar) sarà >ovviamente possibile modificare lo schema della tabella direttamente da Management Studio Express dopo l'importazione.
>
>Il comando però non funzionerà se le "Ad Hoc Distributed Queries" non sono abilitate. Per attivarle, eseguire i seguenti statement:
>
>sp_configure 'show advanced options',1
>reconfigure with override
>go
>sp_configure 'Ad Hoc Distributed Queries',1
>reconfigure with override
>go
Non ho problemi ad attivare le Ad Hoc Queries, invece quando vado ad eseguire questa query:
>SELECT * INTO Clienti FROM
>OPENROWSET('Microsoft.Jet.OLEDB.4.0',
>'Excel 9.0;Database=C:\...\Clienti.xls', [Foglio1$])
...sql server mi riporta questo errore:
>Il provider OLE DB "Microsoft.Jet.OLEDB.4.0" per il server collegato "(null)" ha restituito il messaggio "Impossibile trovare ISAM installabile.".
>Messaggio 7303, livello 16, stato 1, riga 1
>Impossibile inizializzare l'oggetto origine dei dati del provider OLE DB "Microsoft.Jet.OLEDB.4.0" per il server collegato "(null)".
Ho cercato informazioni su questo "ISAM" e si riferivano alla dll msexcl40. Il caso è che questa dll ce l'ho, su registro c'è il valore "win32" che riporta il percorso di questa dll. Sembra tutto a posto, ma in fondo non lo è. Non riesco ad importare su sql server i dati. Dove sbaglio?
Grazie dell'attenzione.
--------------------------------------------------------------------------
Allan Felipe
yag
Profilo
| Junior Member
95
messaggi | Data Invio:
gio 18 mar 2010 - 10:41
scusa se mi intrometto
sei riuscito a risolvere ? ho lo stesso problema
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !