Skip to Main Content

Database Software

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Interested in getting your voice heard by members of the Developer Marketing team at Oracle? Check out this post for AppDev or this post for AI focus group information.

Cannot INSERT records into Partitioned Spatial Table and Index

651348Sep 2 2009 — edited Sep 2 2009
I am trying to tune our Spatial Storage by creating partitioning our spatial_entity table and index. I used the World Geographic Reference System (GEOREF) creating a partition for each 15 x 15 degree grid square assigning a partition key of decimal longitude, decimal_latitude. The build went OK, however when trying to insert a data record I receive an ORA-14400: Inserted partition key does not map to any partition.

I validated the CREATE(s), and all appears correct, but obviously something is not correct, which is prompting for expert help in this forum.


I would be very grateful for your help.

Below are the code snippets for the table and index, and an insert statement.

CREATE TABLE spatial_entity
(
geoloc_type VARCHAR2 (60 BYTE) NOT NULL
,entity_id NUMBER NOT NULL
,metadata_xml_uuid VARCHAR2 (40 BYTE) NOT NULL
,geoloc MDSYS.sdo_geometry NOT NULL
,nee_method CHAR (1 BYTE) NOT NULL
,nee_status CHAR (1 BYTE) NOT NULL
,decimal_latitude NUMBER (15, 6) NOT NULL
,decimal_longitude NUMBER (15, 6) NOT NULL
)
PARTITION BY RANGE (decimal_longitude, decimal_latitude)
(
PARTITION p_lt_0_90s
VALUES LESS THAN (1, -90)
,PARTITION p_lt_0_75s
VALUES LESS THAN (1, -75)
,PARTITION p_lt_0_60s
VALUES LESS THAN (1, -60)
,PARTITION p_lt_0_45s
VALUES LESS THAN (1, -45)
,PARTITION p_lt_0_30s
VALUES LESS THAN (1, -30)
,PARTITION p_lt_0_15s
VALUES LESS THAN (1, -15)
,PARTITION p_lt_0_0
VALUES LESS THAN (1, 0)
,PARTITION p_lt_0_15n
VALUES LESS THAN (1, 15)
,PARTITION p_lt_0_30n
VALUES LESS THAN (1, 30)
,PARTITION p_lt_0_45n
VALUES LESS THAN (1, 45)
,PARTITION p_lt_0_60n
VALUES LESS THAN (1, 60)
,PARTITION p_lt_0_75n
VALUES LESS THAN (1, 75)
,PARTITION p_lt_0_90n
VALUES LESS THAN (1, maxvalue)
....

CREATE INDEX geo_spatial_ind ON spatial_entity (geoloc)
INDEXTYPE IS mdsys.spatial_index
PARAMETERS ('layer_gtype=MULTIPOINT TABLESPACE=GEO_SPATIAL_IND') LOCAL
(PARTITION p_lt_0_90s,
PARTITION p_lt_0_75s,
PARTITION p_lt_0_60s,
PARTITION p_lt_0_45s,
PARTITION p_lt_0_30s,
PARTITION p_lt_0_15s,
PARTITION p_lt_0_0,
PARTITION p_lt_0_15n,
PARTITION p_lt_0_30n,
PARTITION p_lt_0_45n,
PARTITION p_lt_0_60n,
PARTITION p_lt_0_75n,
PARTITION p_lt_0_90n,
...

INSERT INTO spatial_entity
(
geoloc_type
,entity_id
,metadata_xml_uuid
,geoloc
,nee_method
,nee_status
,decimal_latitude
,decimal_longitude
)
VALUES
(
'BATCH'
,0
,'6EC25B76-8482-4F95-E0440003BAD57EDF'
,"MDSYS"."SDO_GEOMETRY"
(
2001
,8307
,"MDSYS"."SDO_POINT_TYPE" (32.915286, 44.337902, NULL)
,NULL
,NULL
)
,'M'
,'U'
,32.915286
,44.337902
);



Thank you for you help.

Dave

Comments

Processing
Locked Post
New comments cannot be posted to this locked post.

Post Details

Locked on Sep 30 2009
Added on Sep 2 2009
3 comments
1,039 views