CREATE TABLE public.qgis
(
id integer,
long double precision,
lat double precision,
geom geometry,
CONSTRAINT qgis _pkey PRIMARY KEY (id)
)
TABLESPACE pg_default;
CREATE INDEX idx_qgis
ON public.qgis USING gist (geom)
TABLESPACE pg_default;

INSERT INTO public.qgis(id, long, lat, geom) values
(3,112.452403,23.054209,ST_GeomFromText('POLYGON((112.453609 23.056194, 112.452403 23.054209, 112.461019 23.047046, 112.453609 23.056194))', 4326))







uri = QgsDataSourceUri()
db_host = 'localhost'
db_name = 'mydb'
db_user = 'postgres'
db_password = '25800852'
db_port = '5432'
# 设置host name, port, database name, username and password
uri.setConnection(db_host,db_port,db_name,db_user,db_password)
schema = 'public'
table = 'qgis'
geom_column = 'geom'
#设置schema, table, geom_column
uri.setDataSource(schema, table, geom_column)
display_name = '数据库数据测试图层'
vlayer = QgsVectorLayer(uri.uri(), display_name, 'postgres')
QgsProject.instance().addMapLayer(vlayer)

文章转载自辛律的学习笔记,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




