我必须在数据库中执行循环.这只是一次性要求.执行该函数后,我现在正在删除该函数.
有没有什么好的方法来创建临时/一次性功能?
是否可以定义默认情况下创建新表的模式?(由"不合格的表名称"引用.)
我已经看到了在Postgres中使用"搜索路径"的一些细节,但我认为它只在检索数据时有效,而不是创建.
我有一堆SQL脚本,它们创建了许多表.我没有修改脚本,而是希望默认情况下在特定模式中设置数据库创建表 - 当它们具有非限定名称时.
这可能吗?
我正在尝试使用以下功能;
SELECT Assign_vertex_id('ways', 0.00001, 'the_geom', 'gid')
Run Code Online (Sandbox Code Playgroud)
但由于某种原因,它给了我以下错误;
NOTICE: CREATE TABLE will create implicit sequence "vertices_tmp_id_seq" for serial column "vertices_tmp.id"
CONTEXT: SQL statement "CREATE TABLE vertices_tmp (id serial)"
PL/pgSQL function "assign_vertex_id" line 15 at EXECUTE statement
ERROR: function addgeometrycolumn(unknown, unknown, integer, unknown, integer) is not unique
LINE 1: SELECT addGeometryColumn('vertices_tmp', 'the_geom', 4326, '...
^
HINT: Could not choose a best candidate function. You might need to add explicit type casts.
QUERY: SELECT addGeometryColumn('vertices_tmp', 'the_geom', 4326, 'POINT', 2)
CONTEXT: PL/pgSQL function "assign_vertex_id" …Run Code Online (Sandbox Code Playgroud) postgresql ×3
database ×1
pgrouting ×1
postgis ×1
schema ×1
search-path ×1
sql ×1
sql-function ×1