Relational databases?


#1

I am new to Panorama, having previously used database systems such as FileMaker Pro. Filemaker stores data in ‘tables’, such that one can set up one table with fields that show data from another table/other tables.

So I have a database with a ‘Words’ table that contains words from many languages, each word in its own record. Within each record are fields that contain various pieces of info. These include the name of the language the word belongs to, the language group the language belongs to, etc Since these bits of info are repetitive (because many words belong to the same language) they are stored in a ‘Languages’ table. A language_ID in each record relates the ‘Words’ table to a ‘Languages’ table, so that several field in each record in the ‘Words’ table show info that is stored in the ‘Languages’ table.

If I understand correctly, Panorama X uses a separate file for each table, and data are copied from table to table rather that data in one table being viewed in another.

Have I understood correctly? If so, what is the most straightforward way to emulate such a situation in Panorama X?


#2

In Panorama, there are several ways to do this. You could have several different files which correspond to tables. Or you could arrange the information in arrays, which are like miniature tables which can be stored in a field in a database. Or they could be in dictionaries, which are specific types of arrays. How that is organized depends on how you will input, search, and otherwise use the data.

Lookup or array search functions can be used to copy data from one file into fields in another file, as you described. Alternatively, they may be used in form elements to display the data, without actually saving it to that file.

There is a lot of flexibility, but that flexibility requires a lot of choices to be made and adds complexity. You should study the help files, with particular emphasis on lookups and arrays, to see how to build your own relationships.

Keep in mind that with Panorama’s efficient use of storage, some things that you may have done with relations could more easily be done without them. In particular, if you have a lot of data items which, for instance, are associated with each language, they could be put into arrays or dictionaries and stored as Choices within a single database, and you would only have to enter them and store them once. That is another area you should study.


#3

There are ways to display data from another table without actually copying it. For example you can use the various lookup( functions in a text display object. In some situations, the arraybuild( function can also act much like a lookup that returns multiple values.

Also, in Panorama X the Text List object and Matrix objects can be configured to display data from another database.


#4

Many thanks to both of you, BruceDeB and admin, for your replies. Now I must get down to applying them!