360°全景影像建庫流程

1創建數據庫

(1)數據庫配置助手

點擊菜單“開始”,找到Oracle數據庫管理系統主文件夾“Oracle – OraDb11g_home1”(該文件夾名稱因版本不同會有出入,使用時請按其命名規則自行對照),打開後找到子文件夾“配置和移植工具”,選擇該文件夾下的“Database Configuration Assistant”。

(2)歡迎使用

數據庫配置助手歡迎界面,點擊“下一步”;

(3)操作

選擇將要執行的操作,默認選擇創建數據庫,點擊“下一步”;

(4)數據庫模板

 

新建數據庫的用途,一般用途按默認配置,點擊“下一步”;

(5)數據庫標識

 

給新建的數據庫命名,這裏我們輸入“pano”,點擊“下一步”;

(6)管理選項

 

選擇數據庫的管理策略,按默認配置,點擊“下一步”;

(7)數據庫身份證明

 

輸入四個內置用戶名的口令,爲了便於記憶,我們輸入的口令與其用戶名保持一致,如:用戶名sys對應的口令就是sys,點擊“下一步“;

(8)存儲選項

 

選擇存儲機制,按默認配置,點擊“下一步”;

(9)數據庫所在位置

 

選擇數據庫文件存放位置,按默認配置,點擊“下一步”;

(10)恢復配置

 

選擇數據庫恢復策略,按默認配置,點擊“下一步”;

(11)數據庫內容

 

選擇示例方案和定製腳本,按默認配置,點擊“下一步”;

(12)初始化參數

 

初始化參數配置,按默認配置,點擊“下一步”;

(13)安全設置

 

選擇安全設置,按默認配置,點擊“下一步”;

(14)自動維護任務

 

啓動自動維護任務,按默認配置,點擊“下一步”;

(15)數據庫存儲

 

數據庫存儲相關信息,按默認配置,點擊“下一步”;

(16)創建選項

 

選擇創建數據庫的模板和腳本,按默認配置,點擊“完成”;

(17)確認創建

確認新建數據庫相關信息,按默認配置,點擊“確定”;

(18)創建

 

(19)完成

 

數據庫創建完成信息,按默認配置,點擊“退出”。

注:以上是在Oracle11g中使用Database Configuration Assistant創建數據庫的完整步驟。如果您使用的是其他版本的Oracle,也許會存在步驟上的差異,請自行對照。

2創建表空間和用戶

(1)進入命令提示行

點擊“開始”菜單,選擇“命令提示符”,或者運行“cmd”進入;

(2)輸入sqlplus

 

在命令行輸入:sqlplus,然後回車;

(3)輸入用戶名sys

 

使用sys賬號以管理員的身份登錄,在“請輸入用戶名:”之後輸入:sys as sysdba,然後回車;

(4)輸入密碼sys

 

在“輸入口令:”之後輸入:sys,然後回車,出現連接到的提示,表示登錄成功。

(5)創建表空間

 

 

在“SQL>”之後輸入:

CREATE TABLESPACE POISPACE

DATAFILE 'D:\Oradata\pano\PANOSPACE.DBF' SIZE200M AUTOEXTEND ON NEXT 20M MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL

SEGMENT SPACE MANAGEMENT AUTO;

然後回車;

(6)創建用戶名sa及口令admin

 

在“SQL>”之後輸入:

CREATE USER "SA" PROFILE"DEFAULT" IDENTIFIED BY "admin" DEFAULT TABLESPACE"POISPACE" TEMPORARY TABLESPACE "TEMP" ACCOUNT UNLOCK;

GRANT UNLIMITED TABLESPACE TO"SA";

GRANT "CONNECT" TO"SA";

GRANT "RESOURCE" TO"SA";

然後回車;

3創建數據表

(1)PIC_ATTRIBUTE(全景影像基本信息表)

序號

字段名

類型

長度

空值

有效性規則

默認值

說明

1

PIC_ID

字符串型

20

 

PK

 

全景影像編號

2

PIC_FRONT_ID

字符串型

20

 

 

 

前一張全景影像編號

3

PIC_BACK_ID

字符串型

20

 

 

 

後一張全景影像編號

4

PIC_LEFT_ID

字符串型

20

 

 

 

左一張全景影像編號

5

PIC_RIGHT_ID

字符串型

20

 

 

 

右一張全景影像編號

6

LINE_ID

字符串型

20

 

 

 

線路編號

7

PIC_NAME

字符串型

200

影像文件名稱,包括文件類型後綴

 

 

影像名稱

8

WIDTH

長整型

 

 

 

 

影像寬度(像素)

9

HEIGHT

長整型

 

 

 

 

影像高度(像素)

10

LONGITUDE

浮點型

 

經度取值範圍內

 

 

影像地理經度

11

LATITUDE

浮點型

 

緯度取值範圍內

 

 

影像地理緯度

12

ABS_ANGLE

浮點型

 

 

 

 

影像參數

13

TOW_ANGLE

浮點型

 

 

 

 

影像參數

14

WORKER_NAME

字符串型

10

 

 

 

採集人

15

WORKER_DEP

字符串型

200

 

 

 

採集人所在單位

16

TIME

日期型

 

 

 

getdate()

影像採集時間

 

在“SQL>”之後輸入:

CREATE TABLE"SA"."PIC_ATTRIBUTE"

(

  PIC_ID VARCHAR2(20) NOT NULL PRIMARY KEY,

  PIC_FRONT_ID VARCHAR2(20),

  PIC_BACK_ID VARCHAR2(20),

PIC_LEFT_ID VARCHAR2(20),

PIC_RIGHT_ID VARCHAR2(20),

  LINE_ID VARCHAR2(20) NOT NULL,

  PIC_NAME VARCHAR2(200) NOT NULL,

  WIDTH NUMBER(7,0) NOT NULL,

  HEIGHT NUMBER(7,0) NOT NULL,

  LONGITUDE NUMBER(16,7) NOT NULL,

  LATITUDE NUMBER(16,7) NOT NULL,

  ABS_ANGLE NUMBER(16,7) NOT NULL,

  TOW_ANGLE NUMBER(16,7) NOT NULL,

  WORKER_NAME VARCHAR2(10),

  WORKER_DEP VARCHAR2(200),

  TIME VARCHAR2(20)

)

TABLESPACE POISPACE

 STORAGE

  (

    INITIAL 64K

        NEXT 1M

        MINEXTENTS 1

        MAXEXTENTS UNLIMITED

  );

然後回車;

(2)POI_LOCATION(興趣點分佈點位信息表)

序號

字段名

類型

長度

空值

有效性規則

默認值

說明

1

POI_ID

字符串型

20

 

PK

 

每個興趣點記錄編號

2

PIC_ID

字符串型

20

 

 

 

全景影像編號

3

ATTR_ID

字符串型

20

 

FK

 

屬性編號

4

LOCAL_X

浮點型

 

像素取值範圍內

 

 

像素X座標

5

LOCAL_Y

浮點型

 

像素取值範圍內

 

 

像素Y座標

6

LONGITUDE

浮點型

 

經度取值範圍內

 

 

地理經度

7

LATITUDE

浮點型

 

緯度取值範圍內

 

 

地理緯度

8

TIME

日期型

 

 

 

getdate()

採集時間

 

在“SQL>”之後輸入:

CREATE TABLE"SA"."POI_LOCATION"

(

  POI_ID VARCHAR2(20) NOT NULL PRIMARY KEY,

  PIC_ID VARCHAR2(20) NOT NULL,

  ATTR_ID VARCHAR2(20),

  LOCAL_X NUMBER(7,0) NOT NULL,

  LOCAL_Y NUMBER(7,0) NOT NULL,

  LONGITUDE NUMBER(16,7),

  LATITUDE NUMBER(16,7),

  TIME VARCHAR2(20)

)

TABLESPACE POISPACE

 STORAGE

  (

    INITIAL 64K

        NEXT 1M

        MINEXTENTS 1

        MAXEXTENTS UNLIMITED

  );

然後回車;

(3)POI_ATTRIBUTE(興趣點屬性信息表)

序號

字段名

類型

長度

空值

有效性規則

默認值

說明

1

ATTR_ID

字符串型

20

 

PK

 

屬性編號

2

NAME

字符串型

50

 

 

 

實體名稱

3

TELEPHONE

字符串型

15

電話號碼格式

 

 

電話號碼

4

EMAIL

字符串型

30

郵件地址格式

 

 

電子郵件地址

5

TYPE1

字符串型

20

 

 

 

興趣點一級分類

6

TYPE2

字符串型

20

 

 

 

興趣點二級分類

7

ADD_NAME

字符串型

50

 

 

 

地址名稱

8

ADD_CODE

字符串型

6

 

 

 

地址編碼

9

DES

字符串型

500

 

 

 

興趣點描述信息

 

在“SQL>”之後輸入:

CREATE TABLE"SA"."POI_ATTRIBUTE"

(

  ATTR_ID VARCHAR2(20) NOT NULL PRIMARY KEY,

  NAME VARCHAR2(50) ,

  TELEPHONE VARCHAR2(15),

  EMAIL VARCHAR2(30),

  TYPE1 VARCHAR2(20),

  TYPE2 VARCHAR2(20),

  ADD_NAME VARCHAR2(50),

  ADD_CODE VARCHAR2(6),

  DES VARCHAR2(500)

)

TABLESPACE POISPACE

 STORAGE

  (

    INITIAL 64K

        NEXT 1M

        MINEXTENTS 1

        MAXEXTENTS UNLIMITED

  );

然後回車;

(4)POI_ENCODE(興趣點分類編碼表)

序號

字段名

類型

長度

空值

有效性規則

默認值

說明

1

ID

長整型

20

 自增長

PK

 

序號

2

TYPE_NAME

字符串型

20

 

 

 

一級分類名稱

3

TYPE_CODE

字符串型

4

2位純數字

 

 

一級分類編碼

4

TYPE_NAME2

字符串型

20

 

 

 

二級分類名稱

5

TYPE_CODE2

字符串型

8

2位純數字

 

 

二級分類編碼

6

DES

字符串型

500

 

 

 

分類說明

 

在“SQL>”之後輸入:

CREATE TABLE"SA"."POI_ENCODE"

(

   IDVARCHAR2(20) NOT NULL PRIMARY KEY,

  TYPE_NAME VARCHAR2(20) NOT NULL,

  TYPE_CODE VARCHAR2(4) NOT NULL,

  TYPE_NAME2 VARCHAR2(20) NOT NULL,

  TYPE_CODE2 VARCHAR2(8) NOT NULL,

  DES VARCHAR2(500)

)

TABLESPACE POISPACE

 STORAGE

  (

    INITIAL 64K

        NEXT 1M

        MINEXTENTS 1

        MAXEXTENTS UNLIMITED

  );

然後回車;

(5)LOCATION_ENCODE(省市地區分類編碼表)

序號

字段名

類型

長度

空值

有效性規則

默認值

說明

1

ID

長整型

 

 自增長

PK

 

序號

2

PROVINCE_NAME

字符串型

20

 

 

 

省市名稱

3

PROVINCE_CODE

字符串型

6

6位純數字

 

 

省市編號

4

AREA_NAME

字符串型

20

 

 

 

地區名稱

5

AREA_CODE

字符串型

6

6位純數字

 

 

地區編號

6

COUNTY_NAME

字符串型

20

 

 

 

區縣名稱

7

COUNTY_CODE

字符串型

6

6位純數字

 

 

區縣編號

 

在“SQL>”之後輸入:

CREATE TABLE"SA"."LOCATION_ENCODE"

(

   IDNUMBER(7,0) NOT NULL PRIMARY KEY,

  PROVINCE_NAME VARCHAR2(20) NOT NULL,

  PROVINCE_CODE VARCHAR2(6) NOT NULL,

  AREA_NAME VARCHAR2(20) NOT NULL,

  AREA_CODE VARCHAR2(6) NOT NULL,

  COUNTY_NAME VARCHAR2(20) NOT NULL,

  COUNTY_CODE VARCHAR2(6) NOT NULL

)

TABLESPACE POISPACE

 STORAGE

  (

    INITIAL 64K

        NEXT 1M

        MINEXTENTS 1

        MAXEXTENTS UNLIMITED

  );

然後回車;

(6)PIC_SLICE_0(全景影像零級切片信息表)

序號

字段名

類型

長度

空值

有效性規則

默認值

說明

1

SLICE_ID

字符串型

20

 

PK

 

切片編號

2

SLICE_NAME

字符串型

20

 

 

 

切片名稱

3

PIC_ID

字符串型

20

 

 

 

圖片編號

4

ALPHA_MAX

浮點型

 

0-360

 

 

水平角最大值

5

ALPHA_MIN

浮點型

 

0-360

 

 

水平角最小值

6

BETA_MAX

浮點型

 

0-180

 

 

俯仰角最大值

7

BETA_MIN

浮點型

 

0-180

 

 

俯仰角最小值

8

Z_MAX

浮點型

 

>0

 

 

焦距最大值

9

Z_MIN

浮點型

 

>0

 

 

焦距最小值

10

SLICE_CONTENT

二進制流

 

 

 

 

切片數據

 

在“SQL>”之後輸入:

CREATE TABLE"SA"."PIC_SLICE_0"

(

  SLICE_ID VARCHAR2(20) NOT NULL PRIMARY KEY,

  SLICE_NAME VARCHAR2(20) NOT NULL,

  PIC_ID VARCHAR2(20) NOT NULL,

  ALPHA_MAX NUMBER(8,4) NOT NULL,

  ALPHA_MIN NUMBER(8,4) NOT NULL,

  BETA_MAX NUMBER(8,4) NOT NULL,

  BETA_MIN NUMBER(8,4) NOT NULL,

  Z_MAX NUMBER(16,7) NOT NULL,

  Z_MIN NUMBER(16,7) NOT NULL,

  SLICE_CONTENT BLOB NOT NULL

)

TABLESPACE POISPACE

 STORAGE

  (

    INITIAL 64K

        NEXT 1M

        MINEXTENTS 1

        MAXEXTENTS UNLIMITED

  );

然後回車;

(*)PIC_SLICE_N(全景影像N級切片信息表)

序號

字段名

類型

長度

空值

有效性規則

默認值

說明

1

SLICE_ID

字符串型

20

 

PK

 

切片編號

2

SLICE_NAME

字符串型

20

 

 

 

切片名稱

3

PIC_ID

字符串型

20

 

 

 

圖片編號

4

ALPHA_MAX

浮點型

 

0-360

 

 

水平角最大值

5

ALPHA_MIN

浮點型

 

0-360

 

 

水平角最小值

6

BETA_MAX

浮點型

 

0-180

 

 

俯仰角最大值

7

BETA_MIN

浮點型

 

0-180

 

 

俯仰角最小值

8

Z_MAX

浮點型

 

>0

 

 

焦距最大值

9

Z_MIN

浮點型

 

>0

 

 

焦距最小值

10

SLICE_CONTENT

二進制流

 

 

 

 

切片數據

PIC_SLICE_N,表示切片有多少級就創建多少張表,每一級對應一張表,每張表的字段與PIC_SLICE_0完全一致,所以就不再闡述了。表命名如:PIC_SLICE_1(對應一級切片),PIC_SLICE_2(對應二級切片),PIC_SLICE_3(對應三級切片)等。

4連接數據庫

(1)啓動Oracle服務;

 

(2)點擊菜單“設置>>數據庫設置”,設置參數,數據庫類型選擇Oracle

(3)測試連接:單擊按鈕“測試連接”;

(4)連接成功;

(5)保存:單擊按鈕“確定”。

5表空間擴容

當影像數據入庫容量達到一定數值,如:30G是單個表空間數據文件的最大容量值,這時候繼續往Oracle錄入數據的無法成功的。可以通過如下兩條語句查看當前表空間的使用狀況以及擴展當前表空間的容量。
(1)查看錶空間:
select sum(bytes)/(1024*1024) as free_space,tablespace_name 
from dba_free_space 
group by tablespace_name; 
SELECT A.TABLESPACE_NAME,A.BYTES TOTAL,B.BYTES USED, C.BYTES FREE, 
(B.BYTES*100)/A.BYTES "% USED",(C.BYTES*100)/A.BYTES "% FREE" 
FROM SYS.SM$TS_AVAIL A,SYS.SM$TS_USED B,SYS.SM$TS_FREE C 
WHERE A.TABLESPACE_NAME=B.TABLESPACE_NAME AND A.TABLESPACE_NAME=C.TABLESPACE_NAME;

(2)擴容表空間:
alter tablespace tablespace_name add datafile '新增表空間數據文件路徑和名稱' size 30000M;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章