2012-03-15 58 views
0

我試圖通過編輯在Oracle中生成的腳本將Oracle數據庫移植到Postgres,並遇到了一些幾何類型列。我爲了讓我用幾何類型使用PostGIS中,使用以下我將列:定義如何在創建表時將數據存儲在列中

CREATE TABLE TABLE_NAME 
(
    ID   BIGINT      NOT NULL, 
    GEOM   GEOMETRY, 
    CENTROID  GEOMETRY, 
    R_CENTROID GEOMETRY, 
    NUM_POINTS BIGINT, 
    PK   BIGINT, 
    EXTENT  GEOMETRY 
); 

這通過在編輯器中,不過產生的Oracle腳本指定如何將數據存儲在幾何列OK如下:

VARRAY "R_EXTENT"."SDO_ELEM_INFO" STORE AS LOB (
    ENABLE  STORAGE IN ROW 
    CHUNK  8192 
    RETENTION 
    CACHE 
    LOGGING 
    INDEX  (
     STORAGE (
        INITIAL   64K 
        MINEXTENTS  1 
        MAXEXTENTS  UNLIMITED 
        PCTINCREASE  0 
        BUFFER_POOL  DEFAULT 
        )) 
     STORAGE (
        INITIAL   64K 
        MINEXTENTS  1 
        MAXEXTENTS  UNLIMITED 
        PCTINCREASE  0 
        BUFFER_POOL  DEFAULT 
        )) 

這只是一列,但在postgres中如何實現呢?或者更重要的是它可以做到句號。

回答

2

您可以忽略來自Oracle腳本的存儲設置。它們只處理列值的物理存儲,根本不影響列的使用。

PostgreSQL以不同方式處理自定義數據類型。

只要保留原來的CREATE TABLE你不需要改變任何東西。

+0

太棒了。謝謝。 – CSharpened 2012-03-15 13:44:21

相關問題