SDO Geometry 相關學習

2022-03-31 02:04:11 字數 2504 閱讀 3018

一、判斷某個圖層是否為sdo_geometry儲存方式

select data_type  from sys.all_tab_columns where column_name ='shape' and table_name='圖層名'

值等於sdo_geometry,為sdo_geometry儲存方式;

值等於st_geometry,為st_geometry儲存方式;

剛開始時可能使用 select t.layer_config  from layers t 來查詢圖層的儲存方式,但是這種方法是有缺陷的:layer_config欄位 的default這個值是根據你建第乙個featureclass時用的是那種儲存方式,例如你第乙個featureclass是sdo_geometry儲存方式,那麼sde中的所有用sdo_geometry儲存的圖層layer_config值都為default,而其他型別的值為非default。當然如果你第一次featureclass是採用二進位制的話,那麼二進位制就為default,而sdo_geometry儲存方式的layer_config字段值就為sdo_geometry。

在before/in arcgis 9.2 圖層的預設儲存為二進位制,即為long raw。arcgis 9.3開始esri使用自己的st_geometry儲存方式。

二、sde資料庫中表的相關說明

mdrt_%表: r樹索引表;

gdb__%表: 系統表

三、關於sdo_geometry中的shape型別:

create table mylake (

feature_id number primary key,

name varchar2(32),

shape mdsys.sdo_geometry);

中的shape為mdsys.sdo_geometry型別,即採用的是mdsys方案中使用者型別sdo_geometry。

oracle 支援自定義的資料型別,你可以用陣列,結構體或者帶有建構函式,功能函式的類來定義自己的物件型別。這樣的物件型別可以用於屬性列的資料型別,也可以用來建立物件表。 而oracle spatial也正是基於此種特性所開發的一套空間資料處理系統。

oracle自定義的使用者型別有三種:陣列型別、物件型別、表型別,例如咱們用的sdo_geometry為物件型別,具體定義如下:

createtypesdo_geometry as object(

sdo_gtype number,//

表示幾何實體的型別

sdo_srid number,//

用來表示座標系

(空間參考座標系

),與幾何實體關聯

sdo_point mdsys.sdo_point_type,//

使用x,y,z

屬性值來定義物件型別,它們都是

number

型別,//

如果sdo_geometry

的sdo_elem_info

及sdo_ordinates

陣列為//

空則sdo_point

為非空,x和y

值就是點幾何實體的座標值

sdo_elem_info mdsys.sdo_elem_info_array,//

使用變長

number

陣列型別

來表示。該屬性將告知如何解釋

sdo_ordinates

裡邊的座標值

;sdo_ordinates mdsys.sdo_ordinate_array/ /

儲存座標值陣列型別

,形成空間物件的邊界

);

跟具體的使用可以參考如下:

1 首先建立乙個資料型別

create type t_air  as object(id int ,name varchar(20));

2 建立表

create table aaa(

id int ,person t_air);

3 插入資料

insert into aaa values(1,t_air(1,'23sdf'));

4 查詢classplace

select a.id ,a.persion.id,a.person.name from aaa a;

關於mdsys使用者和方案的學習:

安裝oracle自動生成的。

mdsys使用者密碼:mdsys,在做一些關於mdsys使用者和方案操作之前需要對其進行解鎖。

用途:the oracle spatial and oracle intermedia locator administrator account oracle。

route相關學習

安裝iproute包 professional tools to control the networking in linux kernels apt get install iproute 顯示鏈路 ip link list 顯示ip位址 ip addr show 顯示路由表 ip route ...

SDIO相關學習

這段時間在研究sdio介面,所以要求對mmc sd sdio都要有所了解,網上找過這些概念,不過總是流傳的是jollen 筆記裡面的乙份,許多地方未能清楚交待,所以我在其基礎上加上一些自己的了解來加深對sdio的學習。並一併學習下sdio匯流排。一 首先從sd和mmc說起 mmc card 與 sd...

SpringCloud相關學習

錯過了這一篇,你可能再也學不會 spring cloud 了!spring boot做為下一代 web 框架,spring cloud 作為最新最火的微服務的翹楚,你還有什麼理由拒絕。趕快上船吧,老船長帶你飛。終章不是最後一篇,它是乙個彙總,未來還會寫很多篇。案例全部採用spring boot 1....