To perform batch conversion or call conversion procedure from an automation script you can use console version of PostgreSQL to SQL Server converter called P2MAGENT.EXE. Find this file in the installation folder. You can either run this tool directly from command line or call it from any script as well. The program supports the following command-line options:
--dest=... | SQL Server database name | |
--dump | convert PostgreSQL database into T-SQL script file | |
--help | display help message and exit | |
--logfile=... | path to the logfile where execution traces will be written | |
--mode=... | how to process existing SQL Server database (0 - overwrite the entire database, 1 - overwrite existing tables only, 2 - skip existing tables, 3 - merge, 4 - synchronize) |
|
--mssqlh=... | Oracle server IP address or network name | |
--mssqlu=... | Oracle user name | |
--mssqlp=... | Oracle user password | |
--no_schema | do not include schema name in table name | |
--pgport=... | PostgreSQL port | |
--posgsh=... | PostgreSQL server IP address or network name | |
--posgsu=... | PostgreSQL user name | |
--posgsp=... | PostgreSQL user password | |
--profile=... | path to the file to load conversion settings from | |
--silent | use this option to disable program output | |
--skip_idx | skip converting indexes | |
--src=... | PostgreSQL database name | |
--tab_def | convert table definitions only | |
--tab_file=... | file containing table names to convert (one table name per line) | |
--views | convert PostgreSQL views into SQL Server |
In the following example the program converts all tables from PostgreSQL database "db 1" into SQL Server database "db1_mss":
P2MAGENT.EXE --src="db 1" --posgsu=postgres --posgsp=qwerty --dest="db1_mss" --mssqlh=FRACTAL --mssqlu=sa --mssqlp=the_passsword
Notes: