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 | 字元串型 | 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;