Записки программиста, обо всем и ни о чем. Но, наверное, больше профессионального.

2010-10-30

because object type foo does not exist or has different identifier

При заливке дампа БД в Oracle через утилиту imp.exe получил странное:

IMP-00060: Warning: Skipping table "A.B" because object type "SDE"."ST_GEOMETRY" does not exist or has different identifier

Это при создании таблицы, где одно из полей типа ST_Geometgy. Руками такая таблица создается без проблем. В чем дело? Как выяснилось, дело в том, что при импорте не только прогоняются скрипты DDL, но еще и проверяются всякие идентификаторы. В частности, у пользовательского типа данных ST_Geometry есть вполне определенный идентификатор, значение которого зависит от БД, в которой был сделан дамп.
Короче, если схема SDE из одной базы а импортируемый дамп из другой, то эта злоебучая ST_Geometry не импортируется. Известная бага.

Но я ее обошел. Похакал грубым образом. Чем-то вроде подсвешника. Я в дампе «правильной» схемы поглядел, как выглядит идентификатор для типа ST_Geometry, там была строка вида
FOREIGNTYPE "SDE"."ST_GEOMETRY" "FB34A3675C874539B1569A69C4071645"
и в «неправильном» дампе в такой строке заменил неправильный ID на правильный. В hex-редакторе.

После чего импорт перестал выдавать такие ошибки, таблицы создались.

Комментариев нет:

Отправить комментарий

Архив блога

Ярлыки

linux (241) python (191) citation (186) web-develop (170) gov.ru (159) video (124) бытовуха (115) sysadm (100) GIS (97) Zope(Plone) (88) бурчалки (84) Book (83) programming (82) грабли (77) Fun (76) development (73) windsurfing (72) Microsoft (64) hiload (62) internet provider (57) opensource (57) security (57) опыт (55) movie (52) Wisdom (51) ML (47) driving (45) hardware (45) language (45) money (42) JS (41) curse (40) bigdata (39) DBMS (38) ArcGIS (34) history (31) PDA (30) howto (30) holyday (29) Google (27) Oracle (27) tourism (27) virtbox (27) health (26) vacation (24) AI (23) Autodesk (23) SQL (23) humor (23) Java (22) knowledge (22) translate (20) CSS (19) cheatsheet (19) hack (19) Apache (16) Klaipeda (15) Manager (15) web-browser (15) Никонов (15) functional programming (14) happiness (14) music (14) todo (14) PHP (13) course (13) scala (13) weapon (13) HTTP. Apache (12) SSH (12) frameworks (12) hero (12) im (12) settings (12) HTML (11) SciTE (11) USA (11) crypto (11) game (11) map (11) HTTPD (9) ODF (9) Photo (9) купи/продай (9) benchmark (8) documentation (8) 3D (7) CS (7) DNS (7) NoSQL (7) cloud (7) django (7) gun (7) matroska (7) telephony (7) Microsoft Office (6) VCS (6) bluetooth (6) pidgin (6) proxy (6) Donald Knuth (5) ETL (5) NVIDIA (5) Palanga (5) REST (5) bash (5) flash (5) keyboard (5) price (5) samba (5) CGI (4) LISP (4) RoR (4) cache (4) car (4) display (4) holywar (4) nginx (4) pistol (4) spark (4) xml (4) Лебедев (4) IDE (3) IE8 (3) J2EE (3) NTFS (3) RDP (3) holiday (3) mount (3) Гоблин (3) кухня (3) урюк (3) AMQP (2) ERP (2) IE7 (2) NAS (2) Naudoc (2) PDF (2) address (2) air (2) british (2) coffee (2) fitness (2) font (2) ftp (2) fuckup (2) messaging (2) notify (2) sharepoint (2) ssl/tls (2) stardict (2) tests (2) tunnel (2) udev (2) APT (1) Baltic (1) CRUD (1) Canyonlands (1) Cyprus (1) DVDShrink (1) Jabber (1) K9Copy (1) Matlab (1) Portugal (1) VBA (1) WD My Book (1) autoit (1) bike (1) cannabis (1) chat (1) concurrent (1) dbf (1) ext4 (1) idioten (1) join (1) krusader (1) license (1) life (1) migration (1) mindmap (1) navitel (1) pneumatic weapon (1) quiz (1) regexp (1) robot (1) science (1) seaside (1) serialization (1) shore (1) spatial (1) tie (1) vim (1) Науру (1) крысы (1) налоги (1) пианино (1)