oracle

关注公众号 jb51net

关闭
首页 > 数据库 > oracle > GeoJSON数据导入到PostgreSql

如何使用GDAL库的ogr2ogr将GeoJSON数据导入到PostgreSql中

作者:码农研究僧

本文主要介绍了PyTorch中的masked_fill函数的基本知识和使用方法,masked_fill函数接受一个输入张量和一个布尔掩码作为主要参数,掩码的形状必须与输入张量相同,掩码操作根据掩码中的布尔值在输出张量中填充指定的值或保留输入张量中的值

数据下载

数据下载地址:https://datav.aliyun.com/portal/school/atlas/area_selector

我这里下载全国所有城市的数据进行导入

下载安装GDAL

以下是安装 ogr2ogr(GDAL 工具集的一部分)的步骤,适用于 Windows、macOS 和 Linux 系统。

Windows系统安装GDAL

下载 GDAL:

下载 GDAL:

安装:

配置环境变量:

验证安装:

ogr2ogr --version

如果显示版本信息,说明安装成功。

macOS系统安装GDAL

使用 Homebrew 安装: 如果没有安装 Homebrew,可以先在终端执行以下命令安装:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

安装 GDAL:

brew install gdal

验证安装: 在终端输入:

确认安装成功。

Linux系统安装GDAL

Debian/Ubuntu 系统:

打开终端,运行以下命令:

sudo apt update
sudo apt install gdal-bin

Red Hat/Fedora 系统:

使用以下命令:

sudo dnf install gdal

验证安装:

在终端输入:

ogr2ogr --version

如果显示版本信息,说明安装成功。

我这里使用的是Ubuntu系统,按照成功会有以下提示:

在这里插入图片描述

在PostgreSql中创建表

GeoJSON 数据包含多个坐标并且表示一个多边形(Polygon),需要相应地调整表设计以支持存储 Polygon 类型的几何数据。

CREATE TABLE geo_data (
    id SERIAL PRIMARY KEY,          -- 唯一标识符
    name VARCHAR(100),              -- 地物名称
    description TEXT,               -- 描述(可选)
    type VARCHAR(50),               -- GeoJSON 类型(例如 "Feature")
    geom GEOMETRY(Polygon, 4326),   -- 空间数据,使用 Polygon 类型
    properties JSONB,               -- 任意属性,使用 JSONB 存储
    created_at TIMESTAMP DEFAULT NOW(), -- 创建时间
    updated_at TIMESTAMP DEFAULT NOW()  -- 更新时间
);

字段说明

索引

为了提高对空间数据的查询性能,可以创建空间索引:

CREATE INDEX idx_geom ON geo_data USING GIST (geom);

GeoJSON 示例

GeoJSON 数据可能类似于以下结构:

{
  "type": "Feature",
  "properties": {
    "name": "Example Polygon",
    "description": "A sample polygon feature."
  },
  "geometry": {
    "type": "Polygon",
    "coordinates": [
      [
        [102.0, 0.0],
        [103.0, 0.0],
        [103.0, 1.0],
        [102.0, 1.0],
        [102.0, 0.0]
      ]
    ]
  }
}

ogr2ogr导入数据到表中

ogr2ogr -f "PostgreSQL" PG:"host=localhost dbname=your_db user=your_user password=your_password" your_data.geojson -nln geo_data -overwrite

导入完成后即可在表中查询到

到此这篇关于使用GDAL库的ogr2ogr将GeoJSON数据导入到PostgreSql中的文章就介绍到这了,更多相关GeoJSON数据导入到PostgreSql内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文