From the course: FileMaker Pro Essential Training

Determining which tables your FileMaker app will need - FileMaker Pro Tutorial

From the course: FileMaker Pro Essential Training

Start my 1-month free trial

Determining which tables your FileMaker app will need

- [Instructor] There's a couple of different methods you could use to create a database in FileMaker. The first of which is to use either a starter or sample app that come prebuilt for you already, and in those cases you could just make some modifications, add some data, and you're ready to roll. But another option which is actually a lot more popular is to create a database from the ground up. And when you create a database from the ground up or from scratch, you'll need to first make some decisions about what types of information or data is going to be stored within the database. So really, the first thing that you're going to have to determine is what types of tables you're going to have. But hold on, let's back up a second. What is a table? Well if you remember earlier in this course we talked about how one of the primary roles of a database is to store information? Well this is that area where the data actually gets stored. It's like a little bucket or container where the data goes. Now what's important in relational databases like FileMaker, is that you could have many different groups of data. Each different group requires its own table. So before you can actually start building these tables in FileMaker, you need to figure out which ones you're going to need. So while this process is quite sophisticated and can take some time, I would strongly suggest that you take some time to figure all this stuff out before you start working with the app. Now there's another course in this library that's called Relational Design with FileMaker Pro, and I strongly recommend that you take a look at that one, because it goes in depth into how to determine what tables you need, and even what relationships. But as a bit of a high level overview, you're going to look at the information that you need to manage in your database, and you're going to look for something called an entity. It's a little bit of a database term, and it's useful here when we're discussing tables because you're going to look at a description of what it is you're trying to build. So for example, in the rest of this course we're going to create a invoicing application. And that means that we have different groups of information. And when I'm trying to figure out what the tables are going to be, I'm looking for nouns, that's really my tip. When someone's describing to you the application that they want to create or if you're reading the process description or something, look for the nouns. Specifically you're looking for something that you want to track or something that can be described. So in our example, we're going to create a database that has customers, and those customers want to be able to order products, they do so by creating invoices. So these are discrete in different types of information. So for example an attribute of a customer would not necessarily describe a product or an invoice number for example when you describe a product for a customer either. So we know they're discrete and individual from each other. These are three different entities. So right now we know that we have three different entities, and that means that we're going to need three different tables in our database. So when it comes time to build the database, the first thing that's going to be asked of us is which tables do we want. So in our case we say we need a customer table, a product table and an invoices table. Now this is a very high level overview and again I recommend that you dig deeper into relational design in FileMaker Pro so that you can understand specifically how we identify both entities and attributes, entities become tables, attributes become fields, and also it's really important for us to evaluate how these tables will be related to each other. But since we have to figure out what our tables are going to be before we can create a database from the ground up, we have to first determine at a high level what tables we're going to want. So in our example moving forward we're going to have customers, products and invoices.

Contents