Understanding Salesforce as a Database

Understanding Salesforce as a Database

PREFACE: This post is part of the Zero to Hero series.

 

“Wait a second, databases? I thought we were going to talk about Salesforce!”

Well, Salesforce is actually a gorgeous and easy to use database which is why we need to discuss it. Understanding the basics of a database and how Salesforce works as a database will help you visualize solutions, understand system limitations and allow you to better visualize the data in Salesforce. Trust me. This is an important foundational part of the puzzle.

The beauty is that you don’t need to know much. We are going to focus on the high-level functionality and terminology.

Database Basics

A database is simply a way to collect and organize information in a series of rows and columns. An easy to understand example of this is Excel. If you have used Excel (and who hasn’t), you have used a database. Easy enough, right?

Take a look at this simple database model.

Database Structure

 

This table is a specific collection of data points organized by rows and columns. In database terminology, a table holds the data points that represent a theme. In this example, the theme is called, “Position Details.”

Salesforce changes the terminology a little bit. Tables in Salesforce are called Objects.

Within the table/object, we have rows and columns. Each row is referred to as a record. Every record contains individual data points that make up the sum of that record. In this example, the Recruiter row is highlighted. If you read the data across the row, we see the data points that are unique to the Recruiter position.

The columns contain a range of data specific to the column name. Salesforce calls columns fields. In the above example, the Education Requirements column is equivalent to a field in Salesforce by the same name. Fields can have different types (which we will cover later on), but each field contains a specific, limited data set. As you read the data in each of the columns, you see a similarity in the data and the relationship to the column or field name.

You can see that in our table, the Education Requirements column/field shows the level of education necessary for this position.

Great! So, that’s it! But Salesforce is more than a standard database. What makes it so powerful is that the database tables can have relationships with one another. It’s a total love fest!

Relational Databases

Here we have our database model again, but this time we have added a field or column called Hiring Manager.

Relational Database

Notice that Andrew Goldberg is listed as the Hiring Manager for two positions. We see Andrew’s name duplicated here because we are still looking at a single database table, and we need a single row for each record. This is normal, and the “duplicate” information on the record is okay – not considered a duplicate because it sits in the Positions table or object.

But what happens if we wanted to see information about Andrew, such as his contact information or department? We need to build a more complex query or report to get access to this information.

Let’s look at a different visualization of a standard database structure:

 

Standard Database
Standard Database Structure

Let’s call the database table on the left “Positions” and the database table on the right will be called “Hiring Manager.” In a typical database structure, these two database tables may share some information (like the name of the Hiring Manager) but because these databases don’t talk to one another, we can’t easily combine the data points from both tables without some complex reports and queries.

Salesforce is a relational database which means that the database tables can be connected. As a result, the tables look more like this:

 

Relational Database
Relational Database = LOVE

Salesforce allows us to use particular types of fields (columns) to relate information together. They are called Master-Detail and Lookup relationship fields. We will cover these in more detail in Chapter 2. For now just know that these fields allow us to connect the two database tables together so that we can collect information on both with a simple query. It also makes navigating the data in Salesforce super simple.

In our example, Andrew Goldberg has his record in the Hiring Manager object (table). As long as we have a relationship built in Salesforce between the Position and Hiring Manager tables, we can navigate between the two with just a few clicks.

Congratulations!

You just learned the basics of a database structure. This knowledge will serve as the building block for all of our future Zero to Hero lessons.

Don’t forget to subscribe to Admin Hero and get every weekly post delivered right to your inbox!


Discover more from Admin Hero

Subscribe to get the latest posts sent to your email.

26 responses to “Understanding Salesforce as a Database”

  1. Hey Brent, great articles! Just wanted to point out a typo in the Relational Databases sections:
    ‘the database table on the right will be called “Hiring Manage.” ‘

    It should read:
    ‘the database table on the right will be called “Hiring Manager.” ‘

    Like

    1. Thanks for reading Evan. I appreciate the feedback and just updated the post.

      Like

  2. Nice post and well done for spotting an area which needs covering in simple terms!

    Like

    1. Thank you Mike! Simplicity was the goal. Glad it turned out that way.

      Like

  3. Hi Brent! Awesome explanation. By the way when is the next chapter going to be posted? Eagerly waiting

    Like

    1. The goal is to post new Zero to Hero content every other week – sandwiched between the regular posts. Thanks for reading!

      Like

  4. Look forward to the next post! May I suggest that you discuss in more depth the benefits of a RDB vs a flat table. I’ve done my fair share of talking hows and whys of that to users who only know Excel.

    Like

    1. Hi Russ – thanks for reading! I have one more post published already and another one on the way on Monday. You can find all of the Zero to Hero posts indexed on the page.

      Like

  5. john leonardelli Avatar

    Brent, i love the graphics…really gets the message across

    Like

    1. Thank you John! I am glad you found it easy to understand.

      Like

  6. Perfect content for a beginner,Moving to chapter 2 now. Totally liking it.

    Like

  7. Thanks Brent!! I really enjoyed this intro & am looking fwd to continuing the series so that I can get up to speed on SF!!

    Ooops…another typo, in the 1st paragraph below the 1st graphic: “In database terminology, a table is holds the data points that represent a theme.” …. methinks it should read, “a table holds…”

    Thanks again, Lisa

    Like

  8. Good one Brent, I am planning to appear in the exam soon, and waiting for post related to Data security.

    Like

  9. Thankyou Brent, your article helped me to understand salesforce very easily..

    Like

  10. Good. Thank you Brent.

    Like

  11. Jaswinder singh Avatar

    Great! cleared the confusion in simple words.

    Like

  12. Learnt a Basic and differences.Was informative.

    Like

  13. Thank you – I am brand new to salesforce and I appreciate all the help I can get!

    Like

  14. It was easy to understand. Thanks!

    Like

  15. Fatoumata Camara Avatar
    Fatoumata Camara

    Great Article, very easy to understand.

    Like

  16. Thanks Brent, this article is a great help to the beginners.

    Like

  17. Thank you so much to provide me basic knowledge!!!

    Like

  18. […] security, and UX fall neatly into place. It’s essential to understand principles of Relational Database Management which informs you how to assess your data needs, choose data types wisely and arrange data tables […]

    Like

  19. Sweet and short but very informative Intro.. made me to go for next Chapter.. Thanks Brent!

    Like

  20. Question for the expert. Many databases have system tables / views which you can leverage to extract table metadata using SQL. Does Salesforce have anything similar ?

    Like

  21. Anthony Okolie Avatar

    Hi Brent,

    Thanks a lot for this awesome explanation. It makes a lot of sense. In relational databases, we have the concept of a foreign key that enables joining information from related tables. Can one say that the concepts (master-detail and lookup relationships) are salesforce’s implementation of the foreign key in her database? Thanks

    Best regards,
    Anthony

    Like

Leave a reply to Udayakarthik Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Discover more from Admin Hero

Subscribe now to keep reading and get access to the full archive.

Continue reading