Financial Information Management FIM: Databases Stefano Grazioli Debriefing Still doing well Lab Easy meter You are a financial analyst at a broker firm…. Many of our customers invest for short amounts of time on Google. They sell their shares within a few weeks…. I wonder: do they make any money out of it? You do the talking Name, major Learning objectives Things you like about the class Things that can be improved Strengths / Attitude towards the Tournament Financial Information Management FIM: Databases Stefano Grazioli Why do we need Databases? Program (e.g., VBA) data is volatile Data in one place for everyone to use Indispensable in commerce DBs vs. DBMSs A database (DB) is an organized collection of data A database Management System (DBMS) is a software that provides data-related functionality User location User or User or program ‘Client’ program program Data center DBMS DBMS: Access, Oracle, IBM DB2, SQL Server, MySQL... DBs and the Web User location User or User or program Browser program program Data center Web server DBMS Relational DBMS When a DBMS organizes your data so that they appear to the users as TABLES, that DBMS is a Relational DBMS, or RDBMS. Client program • RDBMS Is Excel a DB, a DBMS, a RDBMS? Financial Information Management Congratulations! You are hired at SmallBank Homework You are a Business Intelligence analyst at SmallBank Welcome! So glad that you are here and can help us with Business Intelligence! I have so many business questions for you… (1) Who are our customers in Austin, TX? I need a list of first names, last names and IDs (2) What are the rates that we offered on our loans? Prepare a report with the loan IDs and rates for the loans under $50,000,000 (3) …. Please access our MS SQL Server and create these reports for me… Accessing Business Data User location SQL Client Visual Studio Sql queries Data center RDBMS MS SQL Server F-sg6m-s4 SmallBank data: Loan, Loan Officer, Customer, Insurance Plan Example Table: Loan Officer ACTUAL TABLE DIAGRAM LO id f name l name phone demo Small Bank DB: Data Dictionary Loan l_id = the loan unique id principal, rate, date_due, Loan officer lo_id = the loan officer’s unique id f_name, l_name, phone Customer c_id = the customer’s unique id f_name, l_name, city, state Insurance plan coverage = maximum amount covered premium = amount to pay every year Financial Information Management WINIT What Is New In Technology? Financial Information Management SQL Queries SQL Structured Query Language The standard language for databases 70s: - Codd - SEQUEL – Structured English QUEry Language commercialized it in 1979 1986 ISO/ANSI Sometimes sought as a required skill in interviews SQL EXAMPLE: A QUERY SELECT First_Name, Last_Name, ssn FROM StudentTbl WHERE gpa > 3.0 ORDER BY Last_Name; 4+2 BASIC SQL COMMANDS SELECT = ‘search’ INSERT a new row UPDATE a existing row DELETE a row CREATE a table DROP a table Reading the Data Model Primary key: a unique identifier used to retrieve the record Reading the Relationships 1 6 One 5 2 3 Many 4 Navigating the Relationships (‘join’) FK foreign key: a PK in another table, used to link the two tables FK FK FK FK Joins are commonsense If I give you c_id ‘4977’, can you give me the phone numbers of the loan officers for that client? SQL Query Select loan_officer.phone from customer_in_loan, loan, loan_officer where customer_in_loan.c_id = '4977' and customer_in_loan.l_id = loan.l_id and loan.lo_id = loan_officer.lo_id