我有一个GeoJSON文件,我需要用Python将几何图形导入到Postgres DB中。我试过这个:
...
cursor = conn.cursor()
data = json.load(json_file)
for row in data['features']
geometry = row['geometry']
params = (geometry)
cursor.callproc('ST_GeomFromGeoJSON', params)
wkb_geometry = cursor.fetchone()[0]
sql = "INSERT INTO tbl(wkb_geometry) VALUES (%s)"
val = (wkb_geometry)
cursor.execute(sql, val)
conn.commit()
...
字符串
我得到这个错误:
function st_geomfromgeojson(typt => unknown, coordinates => numeric[]) does not exist
LINE 1: SELECT * FROM ST_GeomFromGeoJSON("type":='Polygon',"coordina...
HINT: No function matches the given name and argument types. You might need to add explicit type casts.
型
我不知道如何添加建议的显式类型转换。
1条答案
按热度按时间irlmq6kh1#
我找到了解决方案(非常简单):我只需要使用
JSON.dumps()
将JSON数据转换为字符串,并运行一个简单的插入SQL。字符串