Domanda

Ho spesso dati in Excel o testo che devo accedere a SqlServer. Posso usare ODBC per interrogare il file Excel e posso analizzare il file di testo. Quello che voglio però è uno strumento che catturi i dati e li metta nelle tabelle con poco / nessun sforzo. Qualcuno sa di un tale strumento?

È stato utile?

Soluzione

Hai provato la Procedura guidata di importazione / esportazione di SQL Server ?

In SQL Server Management Studio, fai clic con il pulsante destro del mouse sul nome del database e seleziona il menu Attività , Importa dati . Per Origine dati, selezionare Microsoft Excel , selezionare .XLS ...

Altri suggerimenti

Se si utilizza Sql Server, consultare Integration Services ( SSIS).

Puoi anche dare un'occhiata a parse-o-matic

Utilizzare DTS o SSIS in base alla versione di SQL Server in uso. Esiste una procedura guidata di importazione che può iniziare, ma le importazioni di dati sono raramente semplici e di solito comportano una sorta di pulizia dei dati in modo che i dati in entrata siano accettabili per la tabella in cui si intende archiviarli. I dati di Excel, secondo la mia esperienza, di solito sono particolarmente negativi in ??questo senso perché spesso non sono archiviati correttamente in Excel per cominciare.

Non ho visto strumenti commerciali che lo fanno. Creo questo tipo di strumenti al lavoro tutto il tempo e la convalida dei dati non è banale. Questo si assicura solo che non si disponga di dati errati nel database.

Ho scoperto che per una semplice conversione dei dati è necessario qualcosa come FileHelpers è abbastanza buono. Tuttavia ha ancora bisogno di programmazione. Questo framework è abbastanza facile da usare e qualcuno con un po 'di esperienza potrebbe fare qualcosa per te.

Ripensandoci, è possibile utilizzare SQL Server utility bcp per caricare il contenuto di un file di testo. Questa è un'utilità della riga di comando e ha molte opzioni. Ti suggerirei di provare su una tabella di prova prima di utilizzarla in una tabella di produzione.

È passato un po 'di tempo da quando l'ho usato, quindi non ricordo se è possibile utilizzare direttamente un foglio di calcolo Excel. I file di testo sono sempre i più facili da gestire in ogni caso.

Sembra che sarebbe abbastanza facile scrivere uno script che legge il file di testo e lo converte in " INSERISCI * in TABELLA " Dichiarazioni SQL. Sospetto che ciò sia già stato fatto, ma un'implementazione semplice sarebbe inferiore a 100 righe di codice nel tuo linguaggio di scripting preferito.

Ehi, Google afferma che SQL Server è dotato di un tale strumento, BULK INSERT :

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top