我有一个postgresql远程数据库,其中所有postgis和光栅功能都已启用。
我正在尝试对方案中的栅格表执行查询,但系统返回以下错误
rt_raster_to_gdal: Could not load the output GDAL driver
通过使用以下代码
import psycopg2
from rasterio.io import MemoryFile
import rioxarray as riox
# DB Configuration
dbname = "Database"
dbuser = "user"
dbpass = "pass"
dbhost = "host.com"
dbport = "8080"
try:
conn = psycopg2.connect(database=dbname, user=dbuser, password=dbpass, host=dbhost, port=dbport)
curs = conn.cursor()
print("Database connected successfully")
except:
print("Database not connected successfully")
curs.execute("select ST_AsGDALRaster(st_union(rast), 'GTIFF') from schema.table;")
result = curs.fetchone()
我也尝试添加以下代码到previouse脚本,但没有什么变化
curs.execute("SET postgis.gdal_enabled_drivers = 'ENABLE_ALL';")
如何解决这个问题?
1条答案
按热度按时间7d7tgy0s1#
对于GTiff输出,必须启用对out-db光栅波段的访问。您可以在此处阅读有关此配置选项的更多信息:https://postgis.net/docs/postgis_enable_outdb_rasters.html
为当前会话启用
请注意,要使此选项生效,您仍然需要在PostGIS环境中启用必要的GDAL驱动程序。即,GTiff的驱动程序。