1. 时间戳设置
drop table if exists student;
create table student(
   id int primary key     not null,
   name        char(10)   not null,   
   address     char(50),
   create_time timestamp default current_timestamp,
   update_time timestamp default current_timestamp
);
  1. 修改坐标系

SELECT UpdateGeometrySRID('表名','geom',32649);

  1. 创建空间索引

CREATE INDEX tb_map_analysis_fwx_gist ON tb_map_analysis_fwx USING GIST ( geom);
CREATE INDEX 索引名称 ON 表名称 USING GIST ( 字段名称);

  1. 空间数据库建表方法

polygon和multipolygon可以混合存储,使用geometry字段;将字段定义好坐标系,使用方法2,然后使用方法3创建空间索引即可;
create extension postgis;

  1. 坐标转化和面积的计算

SELECT ST_AsText(ST_Transform(st_geometryfromtext('POINT(120.8 20.5)',4490),4547));
SELECT ST_Area(ST_Transform(geom,4547));

  1. docker下的pg安装

docker pull kartoza/postgis:10.0-2.4
docker run -d --name postgresql2 --restart always -e POSTGRES_USER=postgres -e POSTGRES_PASS='xxzx_1234' -e ALLOW_IP_RANGE=0.0.0.0/0 -v /docker_root/postgresql11-docker:/var/lib/postgresql -v /4T/tmp:/tmp/tmp -p 5432:5432 -t kartoza/postgis:10.0-2.4

  1. 自增索引重新计数

SELECT setval('fwx_single_id_seq',1,FALSE); fwx_single_id_seq指的是索引名称;

  1. pg中单环转多环

  2. 索引的添加

索引是加速查询,但是会降低插入和更新的速度;
语法:CREATE INDEX index_name ON table_name;
示例:CREATE INDEX fwbh_index ON fwx_village_buildings (fwbh);

  1. 数据库的导出

pg_dump -U postgres -t fwx_village_buildings -f ./db.sql vb
-U :表示用户名 -f :指定输出文件 vb :该表从属于的数据库名

  1. 数据库的导入

psql -U postgres -d vb -f ./db.sql

-U :表示数据库用户名 -d :指定要恢复到的数据库名 -f :指定要恢复的xxx.sql文件名称