O SQL Server é uma ferramenta muito amigável e sua interface gráfica facilita operações como exportar ou importar dados, mas hoje veremos que existe uma outra maneira rápida, fácil e pratica de exportar (dump) e importar dados de um banco de dados SQL Server sem usar pesadas ferramentas gráficas.
O utilitário BCP (Bulk Copy Program) permite a exportação e importação de dados através de uma simples linha de comando.
Para facilitar a vida é mais pratico criar arquivos bat, conforme vemos abaixo.
Exportação:
Set Server=Ip ou nome do servidor
Set Username=Usuario
Set Password=senha
Set Arquivo=localização do arquivo bcp com path
Set Log= localização do arquivo de log com path
Set Username=Usuario
Set Password=senha
Set Arquivo=localização do arquivo bcp com path
Set Log= localização do arquivo de log com path
bcp bancodedados..tabela OUT %Arquivo% -o %Log% -S%Server% -U%Username% -P%Password% -c
pause
Exemplo de um arquivo .bat de exportação de dados (BCP OUT):
Exporta.bat
@ECHO OFF
Set Server=webmundi
Set Username=sa
Set Password=1234
Set Arquivo=D:\Webmundi\SQL2008\BCPs\exp_webmundi.bcp
Set Log=D:\Webmundi\SQL2008\BCPs\ exp_webmundi.log
Set Username=sa
Set Password=1234
Set Arquivo=D:\Webmundi\SQL2008\BCPs\exp_webmundi.bcp
Set Log=D:\Webmundi\SQL2008\BCPs\ exp_webmundi.log
ECHO Inicio do BCP…: %TIME%
ECHO Aguarde a exportação dos dados para carga…
ECHO Aguarde a exportação dos dados para carga…
bcp webmundi.dbo.tbwebmundi OUT %Arquivo% -o %Log% -S%Server% -U%Username% -P%Password% -c
ECHO Termino do BCP..: %TIME%
ECHO Log no arquivo %Log%
PAUSE
ECHO Log no arquivo %Log%
PAUSE
Após execução do arquivo .bat acima será gerado o arquivo exp_webmundi.bcp com todos os dados da tabela tbwebmundi. No exemplo abaixo, iremos importa-la na banco wmundi tabela tbwmundi.
Importação:
Set Server=Ip ou nome do servidor
Set Username=Usuario
Set Password=senha
Set Arquivo=localização do arquivo bcp com path
Set Log= localização do arquivo de log com path
Set Username=Usuario
Set Password=senha
Set Arquivo=localização do arquivo bcp com path
Set Log= localização do arquivo de log com path
bcp bancodedados..tabela IN %Arquivo% -o %Log% -S%Server% -U%Username% -P%Password% -c
Pause
Exemplo de um arquivo .bat de importação de dados (BCP IN):
Importa.bat
@ECHO OFF
Set Server=webmundi
Set Username=sa
Set Password=1234
Set Arquivo=D:\Webmundi\SQL2008\BCPs\exp_webmundi.bcp
Set Log=D:\Webmundi\SQL2008\BCPs\ imp_webmundi.log
Set Server=webmundi
Set Username=sa
Set Password=1234
Set Arquivo=D:\Webmundi\SQL2008\BCPs\exp_webmundi.bcp
Set Log=D:\Webmundi\SQL2008\BCPs\ imp_webmundi.log
ECHO Inicio do BCP…: %TIME%
ECHO Aguarde a carga dos dados…
ECHO Aguarde a carga dos dados…
bcp wmundi.dbo. tbwmundi IN %Arquivo% -o %Log% -S%Server% -U%Username% -P%Password% -c
ECHO Termino do BCP..: %TIME%
ECHO Log no arquivo %Log%
PAUSE
ECHO Log no arquivo %Log%
PAUSE
Para maiores informações sobre o BCP, consulte: