Я стараюсь изо всех сил перенести пространственную базу данных из Oracle в Postgresql и с треском провалился.
Я пробовал много разных путей, как вы можете видеть из моего предыдущего вопроса здесь, и ни один из них не работает.Может кто-нибудь сказать, пожалуйста, относительно относительно безболезненный способ сделать это, поскольку я теперь не знаю с этим.
Я пытался использовать стороннее программное обеспечение, такое как SwisSQL, но это не удалось с множеством ошибок.Я попытался создать файлы, полные операторов вставки, а затем создал программу на C # для их синтаксического анализа и замены пространственных типов оракула соответствующими постгисными, и это не удалось с исключением из-за нехватки памяти при самых простых заменах из-за огромного размера этих файлов.,В некоторых таблицах содержится более 2 миллионов записей, поэтому вы можете себе представить размер файла, содержащего вставки для каждой из них.
Я очень отчаянно нуждаюсь в решении этой проблемы, поскольку это серьезно затрудняет прогресс в этой области.этот проект.Мне нужны данные в Postgresql, потому что я пишу программное обеспечение, которое должно быть независимым от базы данных, что означает, что оно должно быть проверено на реальных данных в каждой базе данных.
Любые идеи приветствуются с распростертыми объятиями.Если бы не пространственный аспект, это было бы гораздо проще и, скорее всего, уже сделано.
РЕДАКТИРОВАТЬ:
Вот пример вставки, созданной Toad для Oracle длядать представление о сложности данных.
Insert into CLUSTER_1000M
(CLUSTER_ID, CELL_GEOM, CELL_CENTROID)
Values
(4410925,
"MDSYS"."SDO_GEOMETRY"(2003,81989,NULL,
"MDSYS"."SDO_ELEM_INFO_ARRAY"(1,1003,3,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL),
"MDSYS"."SDO_ORDINATE_ARRAY"(80000,103280,81000,104280,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL)),
"MDSYS"."SDO_GEOMETRY"(2001,81989,
"MDSYS"."SDO_POINT_TYPE"(80500,103780,NULL),NULL,NULL));