2013-02-25 2 views
0

Это должно быть простым, хотя я не мог найти способ или пример еще ...создание Mnesia из модуля Erlang

документация Mnesia показывает, как инициализировать/создать базу данных Mnesia из Erlang оболочки, которая требует чтобы начать Эрл оболочки с -mnesia параметра:

erl -mnesia dir '"/tmp/funky"' 

После того, как в оболочке вы можете создать схему/и т.д. ...

>mnesia:create_schema([node()]). 
ok. 
>mnesia:start(). 
ok. 

Ну, это достаточно просто. Что делать, если я хочу создать схему/etc из другого модуля erlang, и я не запускал процесс с помощью параметра -mnesia parateter/flag? Я думаю, что это в основном означает, как динамически, без запуска скрипта, но с использованием чистого кода erlang. Например, я хотел бы сделать что-то вроде этого:

ответ

1

Ну, я думаю, что нашел решение. set_env - это то, что мне нужно:

application:set_env(mnesia, dir, "/tmp/funcky"), 
mnesia:create_schema([node()]), 
etc... 
Смежные вопросы