Data Warehousing and Business Intelligence

28 April 2012

Bank Data Model

Filed under: Business Knowledge — Vincent Rainardi @ 2:33 pm

I created a retail bank data model in April 2012 for my nephew, who is studying Information System, in order to explain to him what a database of a bank might look like. Rather than concentrating to the data type (length of each column, numeric 20 or 16, etc — and the column lengths are different from bank to bank), I decided to concentrate on the data values, which to him is much more valuable, in order for to give him a good view and experience about the banking industry. I made the data myself. Minimalist, only about 5-10 rows per table, but it gives him an idea of what the data could be.

I put the database is in Excel, so that he doesn’t need SQL Server or Oracle to view it.
The link is here: bank-data-model2

It is a normalised model. The aspiration is to do it to 3NF. But sometimes for practical reason I didn’t do it to 3NF (e.g. only 2NF). This is the list of tables:

  1. Customer
  2. Address
  3. Telephone Number
  4. Customer Address
  5. Customer Telephone
  6. Account
  7. Account Holder
  8. Occupation
  9. Transaction
  10. List Lookup
  11. Product
  12. Branch
  13. Employee
  14. Currency
  15. Interest Rate Scheme
  16. Interest Rate
  17. Product Interest Rate
  18. Transaction

For illustration, below are the screenshots of 4 tables: Customer, Account, Interest Rate Scheme, and Interest Rate

Customer Table1

Customer Table2

Account Table

Interest Rate Scheme Table

Interest Rate Table

Transaction Table

6 Comments »

  1. Account can further be normalized to capture Status/ Types of Balances

    Comment by Praveen — 22 June 2013 @ 8:05 pm | Reply

  2. What is the difference between account holder and customer

    Comment by Joseph Khalil — 11 September 2015 @ 7:25 am | Reply

    • Account Holder table contains information about which customer(s) own which account(s). It is many to many relationship.
      I agree that Account Holder is not a good table name. Account Ownership is probably a better table name. Or Customer-Account Relationship table.

      Comment by Vincent Rainardi — 11 September 2015 @ 6:07 pm | Reply

  3. Good day, the link seems to have expired. Would you be able to re-upload it by chance?

    Comment by Dan — 22 September 2016 @ 8:17 pm | Reply


RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Create a free website or blog at WordPress.com.

%d bloggers like this: