You are here

use batch to import data in csv format to MSSQL

Test.bat

with localhost

  1. set SQLSERVER_HOME="C:\Programme\Microsoft SQL Server"
  2. set SQLCMD_DIR=%SQLSERVER_HOME%\110\Tools\Binn
  3. set SQLCMD=%SQLCMD_DIR%\sqlcmd.exe
  4.  
  5. set SQLSERVER=localhost
  6.  
  7. echo %CWD%
  8. set CWD=%~dp0
  9. echo %CWD%
  10.  
  11. %SQLCMD% -S %SQLSERVER% -i Test.sql -o Test.log

or with remote server

  1. set SQLSERVER_HOME="C:\Programme\Microsoft SQL Server"
  2. set SQLCMD_DIR=%SQLSERVER_HOME%\110\Tools\Binn
  3. set SQLCMD=%SQLCMD_DIR%\sqlcmd.exe
  4.  
  5. set SQLSERVER=Domain\Server
  6. set USER=user
  7. set PWD=password
  8.  
  9. echo %CWD%
  10. set CWD=%~dp0
  11. echo %CWD%
  12.  
  13. %SQLCMD% -S %SQLSERVER% -U %USER% -P %PWD% -i Test.sql -o Test.log

Test.sql

  1. use [DMSVISIONG_PORTAL]
  2. go
  3.  
  4. truncate table [DMSV_ORGELEMENT]
  5. go
  6.  
  7. bulk insert [DMSV_ORGELEMENT]
  8. from '$(CWD)\DMSV_ORGELEMENT.csv'
  9. with
  10. (
  11. codepage = 'ACP',
  12. fieldterminator = ';',
  13. firstrow = 2
  14. )
  15. go
  16.  
  17. truncate table [DMSV_PORTALKUNDE]
  18. go
  19.  
  20. bulk insert [DMSV_PORTALKUNDE]
  21. from '$(CWD)\DMSV_PORTALKUNDE.csv'
  22. with
  23. (
  24. codepage = 'ACP',
  25. fieldterminator = ';',
  26. firstrow = 2
  27. )
  28. go

DMSV_ORGELEMENT.csv

  1. ORGE_PK;ORGE_TYP;ORGE_NAME;ORGE_BESCHREIBUNG;ORGE_PARENT_PK
  2. 1;Organisation;Mandant SWD;Root Element Mandant SWD;0
  3. 2;Organisation;SWD Vertrieb;Root Element Mandant SWD Vertrieb;0
  4. 3;Organisation;Flughafen Düsseldorf;Root Element Mandant Flughafen Düsseldorf;0
  5. 4;Standort;Düsseldorf;Standort Düsseldorf;1
  6. 7;Gebäude;E001;Gebäude E001;4

DMSV_PORTALKUNDE.csv

  1. PKND_PK;PKND_NAME;PKND_BESCHREIBUNG;PKND_MANDANT_PK
  2. 1;Kunde 1;Direkter Kunde der SWD;1
  3. 2;Kunde 2;Direkter Kunde der SWD;1
  4. 3;Kunde 3;Direkter Kunde der SWD;1
  5. 4;Vertrieb 1;SWD Vertriebsbereich 1;2

Blog: