Невозможно удалить таблицу мнезий, которая, как я знаю, существует - PullRequest
0 голосов
/ 12 июня 2018

У меня есть таблица мнезий, которую я пытаюсь удалить.Однако, когда я пытаюсь запустить :mnesia.delete(TableName), я получаю эту ошибку обратно {:aborted, {:no_exists, TableName}}

Когда я пытаюсь создать ту же таблицу, запуская :mnesia.create_table(TableName, [attributes: [:id, :att1, :att2], disc_copies: [Node.self()]]), я получаю это обратно {:aborted, {:already_exists, TableName}}

Я все еще вижу файл .DCD для таблицы после удаления, что вызывает это и как я могу это исправить?

Примечание: код находится в кодовой базе Elixir.

Редактировать:Когда мое приложение запускается, я пытаюсь удалить и заново создать эту таблицу, даже если она существует.

1 Ответ

0 голосов
/ 12 июня 2018

:mnesia.delete/1 ищет ключ для удаления в данной таблице (и принимает кортеж {Table, Key}).

Возможно, вы хотите :mnesia.delete_table/1который удалит саму таблицу.

Документы для более: http://erlang.org/doc/man/mnesia.html#delete_table-1

...