В Microsoft SQL Server и MySQL имена индексов должны быть уникальными в таблице, но не в базе данных. Это не похоже на PostgreSQL.На каком уровне имена индексов Postgres должны быть уникальными?
Вот что я делаю: я сделал копию таблицы с использованием CREATE TABLE new_table AS SELECT * FROM old_table
и т. Д. И вам нужно заново создать индексы.
Запуск запроса как CREATE INDEX idx_column_name ON new_table USING GIST(column_name)
вызывает ERROR: relation "idx_column_name" already exists
Что здесь происходит?
имен уникальны в пределах схемы. (schema: = пространство имен для таблиц и ограничений (и функции и т. д.). (хотя допускаются ограничения между схемами) – wildplasser
BTW: это фактическое сообщение об ошибке? ('idx_column_name' отличается от' idx_pickup_geom') – wildplasser
Индексы используют одно и то же пространство имен (: = schema) с таблицами. (index: = table). Вам нужно придумать другое имя (или опустить его: система может придумать вам имя) – wildplasser