创建空间索引
insert into user_sdo_geom_metadata(table_name,COLUMN_NAME, DIMINFO, SRID)
values(
'point_geometry_info',
'POINT_INFO',
MDSYS.SDO_DIM_ARRAY(
MDSYS.SDO_DIM_ELEMENT('X',-180,180,0.005),
MDSYS.SDO_DIM_ELEMENT('Y',-90,90,0.005)
),
4326
)
CREATE INDEX point_geometry_info ON point_geometry_info(POINT_INFO) INDEXTYPE IS MDSYS.SPATIAL_INDEX;
Java代码:
String sql = "insert into point_geometry_info (point_id, user_id, point_name, point_info, point_type, create_time) values(?,?,?,?,?,sysdate)";
R = getDistanceLat(Y,R/1000);
JGeometry geom = JGeometry.createCircle(X,Y,R,4326);
java.sql.Connection connection = DataSourceUtils.getConnection(jdbcTemplate.getDataSource());
STRUCT dbObject = null;
try {
OracleConnection oracleConnection = OracleUtils.unwrap(connection);
dbObject = JGeometry.store(geom,oracleConnection);
} catch (SQLException e) {
e.printStackTrace();
}
jdbcTemplate.update(sql,geofenceId,userId,geofenceName,dbObject,1);
错误提示:
Caused by: java.sql.SQLException: ORA-29875: 无法执行 ODCIINDEXINSERT 例行程序
ORA-13035: SDO_GEOMETRY 对象中的数据 (测量数据中的弧) 无效
ORA-06512: 在 "MDSYS.SDO_INDEX_METHOD_10I", line 720
ORA-06512: 在 "MDSYS.SDO_INDEX_METHOD_10I", line 225
ORA-06512: 在 "MDSYS.SDO_INDEX_METHOD_10I", line 225
请帮忙看一下问题可能出在哪里