我正在尝试读取一个geojson文件并将记录插入到postgres表中-使用以下python代码。
import json
import psycopg2
conn = psycopg2.connect(host="<<ip_address>>",database="DB1", user="<<id>>", password="pwd")
cur = conn.cursor()
with open('NTA_shape.json') as f:
Geojson_data = json.load(f)
for feature in Geojson_data['features']:
type_val=feature['geometry']['type']
geom=feature['geometry']['coordinates']
ntaname=feature['properties']['NTAName']
boroname=feature['properties']['BoroName']
data = {"type":type_val,"coordinates":geom}
sql ="""Insert into <<Table_NAME> (geom,ntaname,boroname) VALUES(ST_GeomFromGeoJSON(%s),%s,%s)"""
nta_boro=(json.dumps(data),ntaname,boroname)
cur.execute(sql,nta_boro)
conn.commit()
conn.close()但是当我查询表时,很多记录都丢失了。如果我打印json.dumps(数据)变量-它会显示所有记录。
我不确定,我在插入表的过程中遗漏了什么,请帮助。
https://stackoverflow.com/questions/47665701
复制相似问题