Specifiying Unique Key Columns

When a form (or report) is being designed, and retrieves data from a table (eg., where the top-level type is table) Rekall asks for the Unique Key column for the table which is being accessed by the form. If the Auto option is chosen, then Rekall will try to pick a column using the following criteria:

Alternatively, you can specify a column to be used via the Primary Key Only and Any Unique Column. These force Rekall to use the specified column (and to check that the column is primary or unique respectively). In either case, similar criteria are used to decide what sort of updates are possible.

The last possibility is Any Single Column. This option should be treated with caution; it tells Rekall to treat the specified column as unique (whether or not it really is), and to assume that the value does not change on row insertion or update (even if there are triggers that do so). This is useful where you have a table which you know is in practice unique. With this option set you can always insert and update data; the only retriction is that the user must enter values for it ( Unlike, for instance, a MySQL auto-increment column, where Rekall can leave the server database to generate a value. ) .