文件首頁
MySQL 8.4 參考手冊
相關文件 下載本手冊
PDF (美式信紙) - 39.9Mb
PDF (A4) - 40.0Mb
Man Pages (TGZ) - 258.5Kb
Man Pages (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  空間資料類型

13.4.1 空間資料類型

MySQL 具有對應於 OpenGIS 類別的空間資料類型。這些類型的基礎在 第 13.4.2 節,「OpenGIS 幾何模型」中描述。

有些空間資料類型保存單一幾何值

  • GEOMETRY

  • POINT

  • LINESTRING

  • POLYGON

GEOMETRY 可以儲存任何類型的幾何值。其他單一值類型(POINTLINESTRINGPOLYGON)將其值限制為特定幾何類型。

其他空間資料類型保存值的集合

  • MULTIPOINT

  • MULTILINESTRING

  • MULTIPOLYGON

  • GEOMETRYCOLLECTION

GEOMETRYCOLLECTION 可以儲存任何類型的物件集合。其他集合類型(MULTIPOINTMULTILINESTRINGMULTIPOLYGON)將集合成員限制為具有特定幾何類型的成員。

範例:若要建立一個名為 geom 的表格,其中包含一個名為 g 的欄位,該欄位可以儲存任何幾何類型的值,請使用此陳述式

CREATE TABLE geom (g GEOMETRY);

具有空間資料類型的欄位可以具有 SRID 屬性,以明確指出儲存在欄位中的值的空間參考系統 (SRS)。例如

CREATE TABLE geom (
    p POINT SRID 0,
    g GEOMETRY NOT NULL SRID 4326
);

如果空間欄位為 NOT NULL 且具有特定的 SRID,則可以在空間欄位上建立 SPATIAL 索引,因此,如果您計劃為欄位建立索引,請使用 NOT NULLSRID 屬性宣告該欄位

CREATE TABLE geom (g GEOMETRY NOT NULL SRID 4326);

InnoDB 表格允許笛卡爾和地理 SRS 的 SRID 值。MyISAM 表格允許笛卡爾 SRS 的 SRID 值。

SRID 屬性會使空間欄位受到 SRID 限制,這具有以下含義

沒有 SRID 屬性的空間欄位不受 SRID 限制,並且接受具有任何 SRID 的值。但是,在修改欄位定義以包含 SRID 屬性之前,最佳化工具無法在它們上使用 SPATIAL 索引,這可能需要先修改欄位內容,使所有值都具有相同的 SRID。

如需其他範例說明如何在 MySQL 中使用空間資料類型,請參閱第 13.4.6 節,「建立空間欄」。如需空間參考系統的相關資訊,請參閱第 13.4.5 節,「空間參考系統支援」