Postgres (через sqlalchemy) не позволяет мне заменить таблицу, если она существует - PullRequest
0 голосов
/ 26 февраля 2020
File "/home/user/.local/lib/python3.6/site-packages/pandas/core/generic.py", line 2712, in to_sql
    method=method,
File "/home/user/.local/lib/python3.6/site-packages/pandas/io/sql.py", line 498, in to_sql
    raise ValueError("'{0}' is not valid for if_exists".format(if_exists))
ValueError: 'tableName' is not valid for if_exists

Это ошибка, которую я получаю, когда пытаюсь вставить данные в таблицу postgres через sqlalchemy. Это работало раньше, но в последнее время не проходит. Вот код, который вызвал ошибку:

data.to_sql(tableName,
            engine=db.create_engine(self.dbString),
            if_exists='replace',
            schema='public')

Я могу включить данные в новую таблицу, но эта новая таблица также не может быть удалена с другой попыткой приема с if_exist = 'replace'.

Есть проблема с разрешением или другая проблема? Я попытался изменить строку подключения для входа в систему как суперпользователь postgres будет иметь все разрешения, и это ничего не изменило. У пользователя по умолчанию, который я использую, есть все разрешения, кроме RLS.

...