軟件測試數據庫中SQL語句創建Oracle Spatial的圖層方法

發表于:2010-09-29來源:作者:點擊數: 標簽:軟件測試數據庫sqlSqlSQL
軟件測試 數據庫 中SQL語句創建 Oracle Spatial的圖層方法 SQL是高級的非過程化編程語言,允許用戶在高層數據結構上工作。它不要求用戶指定對數據的存放方法,也不需要用戶了解具體的數據存放方式,所以具有完全不同底層結構的不同數據庫系統,可以使用相同

軟件測試數據庫中SQL語句創建Oracle Spatial的圖層方法
SQL是高級的非過程化編程語言,允許用戶在高層數據結構上工作。它不要求用戶指定對數據的存放方法,也不需要用戶了解具體的數據存放方式,所以具有完全不同底層結構的不同數據庫系統,可以使用相同的SQL語言作為數據輸入與管理的  SQL
接口。它以記錄集合作為操作對象,所有SQL語句接受集合作為輸入,返回集合作為輸出,這種集合特性允許一條SQL語句的輸出作為另一條SQL語句的輸入,所以SQL語句可以嵌套,這使他具有極大的靈活性和強大的功能,在多數情況下,在其他語言中需要一大段程序實現的功能只需要一個SQL語句就可以達到目的,這也意味著用SQL語言可以寫出非常復雜的語句。   結構化查詢語言(Structured Query Language)最早是IBM的圣約瑟研究實驗室為其關系數據庫管理系統SYSTEM R開發的一種查詢語言,它的前身是SQUARE語言。SQL語言結構簡潔,功能強大,簡單易學,所以自從IBM公司1981年推出以來,SQL語言得到了廣泛的應用。如今無論是像Oracle、Sybase、Informix、SQL Server這些大型的數據庫管理系統,還是像Visual Foxpro、PowerBuilder這些PC上常用的數據庫開發系統,都支持SQL語言作為查詢語言。   美國國家標準局(ANSI)與國際標準化組織(ISO)已經制定了SQL標準。ANSI是一個美國工業和商業集團組織,負責開發美國的商務和通訊標準。ANSI同時也是ISO和International Electrotechnical Commission(IEC)的成員之一。ANSI 發布與國際標準組織相應的美國標準。1992年,ISO和IEC發布了SQL國際標準,稱為SQL-92。ANSI隨之發布的相應標準是ANSI SQL-92。ANSI SQL-92有時被稱為ANSI SQL。盡管不同的關系數據庫使用的SQL版本有一些差異,但大多數都遵循 ANSI SQL 標準。SQL Server使用ANSI SQL-92的擴展集,稱為T-SQL,其遵循ANSI制定的 SQL-92標準。   SQL語言包含4個部分:   ※ 數據定義語言(DDL),例如:CREATE、DROP、ALTER等語句。   ※ 數據操作語言(DML),例如:INSERT(插入)、UPDATE(修改)、DELETE(刪除)語句。   ※ 數據查詢語言(DQL),例如:SELECT語句。   ※ 數據控制語言(DCL),例如:GRANT、REVOKE、COMMIT、ROLLBACK等語句。   SQL語言包括三種主要程序設計語言類別的語句:數據定義語言(DDL),數據操作語言(DML)及數據控制語言(DCL)。   SQL 是用于訪問和處理數據庫的標準的計算機語言。   SQL 指結構化查詢語言 SQL 使我們有能力訪問數據庫 SQL 是一種 ANSI 的標準計算機語言 編者注:ANSI,美國國家標準化組織

接下來說一下有關數據庫中SQL語句創建Oracle Spatial的圖層方法
如果需要直接操作數據庫,寫SQL腳本的方式創建空間數據庫,需要注意,創建數據庫后還需要將一些必要的元數據信息寫入對應的表中,然后再向空間表插入行數據(一行就是一個地圖圖元),大家可以參照下面的SQL語句操作,一定可以創建成功的。
  1.創建空間表

  CREATE TABLE Spatable (

  ID NUMBER (11),

  NAME VARCHAR2 (32),

  MI_STYLE VARCHAR2 (254),

  MI_PRINX      NUMBER (11),

  GEOLOC        MDSYS.SDO_GEOMETRY );

  2.將表元信息插入MapCatalog表中,如果該表不存在請用mapinfo/mapinfo登陸如數據庫,請導入MapInfo公司提供的腳本,該腳本在MapXtreme

  for Java安裝后的目錄中找到

  insert into mapinfo.mapinfo_mapcatalog( spatialtype , tablename

  , ownername, spatialcolumn, db_x_ll, db_y_ll, db_x_ur, db_y_ur,

  coordinatesystem, symbol, xcolumnname, ycolumnname,

  renditiontype, renditioncolumn, renditiontable, number_rows )

  values

  (13,'SPATABLE','DEMOGIS','GEOLOC',0,100000,0,100000,'NONEARTH

  UNITS "M" BOUNDS (0, 0) (100000, 100000)

  ',NULL,'NO_COLUMN','NO_COLUMN',1,'MI_STYLE',NULL,NULL);

  3.將表元信息插入MapCatalog表中,安裝完Oracle Spatial就有

  INSERT INTO USER_SDO_GEOM_METADATA valueS

  ('Spatable','GEOLOC',MDSYS.SDO_DIM_ARRAY( MDSYS.SDO_DIM_ELEMENT(

  'x', 0, 10000, .000000001),MDSYS.SDO_DIM_ELEMENT('Y', 0,

  10000,.000000001)), NULL)

  4.創建空間索引

  CREATE INDEX Spatable_SX ON Spatable(GEOLOC) INDEXTYPE IS

  MDSYS.SPATIAL_INDEX;

  5.創建索引

  create index Spatable_idx on Spatable(mi_prinx);

  6.向表中插入數據,一行代表一個圖元

  insert into Spatable values (1, 'tab_1', '', 1,

  MDSYS.SDO_GEOMETRY(

  2001, NULL, MDSYS.SDO_POINT_TYPE(6027.08803, 1563.71732, NULL),

  NULL, NULL));

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97