Importare dati excel o .txt in una tabella di un database sql server

martedì 15 dicembre 2009 - 21.13

mauri1961 Profilo | Senior Member

Salve a tutti, sono un neofita e autodidatta di sql server 2008, mi trovo nella necessità di dover popolare alcune tabelle da dei dati che ho in formato excel o in alternativa txt.
Quale sistema e' il piu rapido e opportuno e se possibile potreste indicarmi alcuni esempi dai quali posso ricavare gli script necessari?
Grazie e Saluti.

alx_81 Profilo | Guru

>Salve a tutti,
ciao

>sono un neofita e autodidatta di sql server 2008,
>mi trovo nella necessità di dover popolare alcune tabelle da
>dei dati che ho in formato excel o in alternativa txt.
>Quale sistema e' il piu rapido e opportuno e se possibile potreste
>indicarmi alcuni esempi dai quali posso ricavare gli script necessari?
Ci sono fondamentalmente tre possibilità principali:

- usare i wizard di import dei dati, del tutto visuale, facilmente raggiungibile dal menu del tasto destro del mouse sul database --> import data..
- usare la bcp utility - Bulk Copy Program (http://msdn.microsoft.com/en-us/library/ms162802.aspx)
- creare un SSIS - Sql Server Integration Service (http://www.dotnethell.it/articles/SSIS-SQL-Server-Integration-Services.aspx)

il terzo punto è raggiungibile anche "salvando" il package creato durante l'esecuzione del wizard.

Ora devo farti un paio di domande:
- Devi automatizzare/schedulare il processo?
- Che edizione di sql server 2008 hai?
- Da dove dovresti "lanciare" queste importazioni?

>Grazie e Saluti.
di nulla!
--

Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi

mauri1961 Profilo | Senior Member

devo schedulare il processo
la versione è quella express 2008
il programma dovrebbe essere lanciato automaticamente in batch ogni sera mettendo in comunicazione due server.
Diciamo che al momento mi basta effettuare dei test su un client che lavora in locale tanto per verificare i risultato del trasferimento.

Grazie ancora.

Ciao, Maurizio

alx_81 Profilo | Guru

>devo schedulare il processo
>la versione è quella express 2008
le due cose vanno un tantino in contrasto.
Questo perchè la express non supporta la schedulazione tramite SQL Server Agent. Proprio non puoi installare l'agent.
Quindi l'unico modo è fare uno script sql (usando SQLCMD) e poi schedularlo tramite Windows Task Scheduler.
--

Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
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 !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5