无法删除我知道存在的mnesia表

时间:2018-06-12 13:30:40

标签: erlang elixir mnesia

我有一个我想删除的mnesia表。但是,当我尝试运行: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 :(得分:5)

:mnesia.delete/1在给定的表中查找要删除的键(并使用元组{Table, Key})。

您可能希望:mnesia.delete_table/1删除表格本身。

更多文档:http://erlang.org/doc/man/mnesia.html#delete_table-1