rdbms-1.0 user contribution

Ulf Wiger <>
Wed Jan 13 15:17:18 CET 1999


I've contributed a data dictionary to mnesia (see
http://www.erlang.org/user.html)

The dictionary provides:
- type checks
- boundary checks
- verification triggers
- referential integrity
- a select-type access method
- compound attributes
- a type conversion utility (strings to specified types)
- a data import tool which performs integrity checks

...and some other things.


One thing I've noticed when playing with it is that it is not well
documented in mnesia how to perform a series of schema operations within
one schema transaction.

This is obviously something that I wanted to do, since I add user
properties to a table in order to support integrity checks.

Here's how I've done it:

create_table(Tab, MnesiaProps, UserProps) ->
    F = fun() ->
                mnesia_schema:do_create_table(Tab, MnesiaProps),
                rdbms:do_add_properties(UserProps)
        end,
    mnesia_schema:schema_transaction(F).

Also note that I've patched mnesia_schema.erl in order to support adding
multiple user properties within one transaction. The patch is included
in the rdbms-1.0 package.


/Uffe

-- 
Ulf Wiger, Chief Designer AXD 301     <>
Ericsson Telecom AB                          tfn: +46  8 719 81 95
Varuvägen 9, Älvsjö                          mob: +46 70 519 81 95
S-126 25 Stockholm, Sweden                   fax: +46  8 719 43 44



More information about the erlang-questions mailing list