A lot of people think 'relational' points to the relations between tables, but in fact it points to the relation between columns and rows. A relational database stores the data in columns (or fields or attributes): one column = 1 type of data for intance a column with names. One row (record, tuple) is a collection of all data belonging to one entity (example: all data of one person). The data that belong to one object/class are grouped in a table: like Persons, Sales, ... .These objects can interact : for instance a person can buy something. Than there exists a relation between tables person and sales. To prevent that you have to repeat name and adress ect. of a person with each sale, you create a primary key field in table Persons: this must be unique for each person and must always be filled in, just like your social security number. In the table Sales, you only have to note this one field to be able to retrieve all data for that person from table Persons, this is the foreign key field in table Sales. There is a lot of info on the net describing relational databases and normalisation. I suggest you do some reading there.does that indicate the db is 'relational' ? And the PK should stay ?