Nevím, proč nikdo nezmínil nejjednodušší a nejjednodušší způsob pomocí robustního MS SQL Server Management Studio.
Jednoduše stačí použít vestavěnou funkci SSIS Import/export. Můžete postupovat takto:
-
Nejprve musíte nainstalovat ovladač PostgreSQL ODBC pro Windows. Je velmi důležité nainstalovat správnou verzi, pokud jde o oblouk CPU (x86/x64).
-
Uvnitř Management Studio klikněte pravým tlačítkem na svou databázi:Úkoly -> Exportovat data
-
Vyberte Nativní klient SQL Server jako zdroj dat.
-
Vyberte .Net Framework Data Provider pro ODBC jako cílový ovladač.
-
Nastavte připojovací řetězec k databázi v následujícím tvaru:
Driver={PostgreSQL ODBC Driver(UNICODE)};Server=;Port=;Databáze=;UID=;PWD=
-
Na další stránce stačí vybrat, které tabulky chcete exportovat. SQL Server vygeneruje výchozí mapování a vy jej můžete volně upravovat. Pravděpodobně narazíte na problémy s nesouladem typů, jejichž vyřešení nějakou dobu trvá. Například, pokud máte na SQL Serveru booleovský sloupec, měli byste jej exportovat jako int4.
Dokumenty Microsoft obsahuje podrobný popis připojení k PostgreSQL prostřednictvím ODBC.
PS:Pokud chcete vidět nainstalovaný ovladač ODBC, musíte jej zkontrolovat prostřednictvím Správce zdrojů dat ODBC.