dennis schmid portfolio
DESCRIPTION
SQL Server 2008 R2 PortfolioTRANSCRIPT
Dennis F. Schmid
SQL Server 2008 R2 Portfolio(770) 889-7700
1
Email: [email protected]
http://www.linkedin.com/in/dennisschmid
Table of Contents
2
Introduction
T-SQL Curriculum
Piggy Bank Project
Mini Adventure Works Project
BlockFlix Project
Introduction
3
The SetFocus SQL Master’s Program is an intensive, hands-on, project oriented program where participants gain knowledge and valuable experience putting the SQL Server 2008 R2 skill set to use in a simulated work environment.
This nine week program included six weeks of lecture, two separate individual project weeks as well as a team project during the final week of the course.
The curriculum covered Relational Database Design, Query development using MS SQL Server 2008 R2 T-SQL, Implementing Databases in MS SQL Server 2008 R2, Advanced T-SQL Querying, Integration Services (SSIS) and Reporting Services (SSRS).
T-SQL Curriculum
4
This textbook was covered in its entirety during one of the lecture weeks. In addition to covering the chapter exercises during labs, we completed ‘homework’ assignments of which some samples follow.
An entire week was also dedicated to Advanced T-SQL subjects utilizing proprietary training material provided by SetFocus
5
T-SQL Fundamentals Example 1Write and execute a query to retrieve the member’s full name and member_no from the member table and the isbn and log_date values from the reservation table for member numbers 250, 341, and 1675. Order the results by member_no and log_date. You should show information for these members, even if they have no books on reserve.
6
T-SQL Fundamentals Example 2
Using joins and a UNION clause, write a query to retrieve a single list of members both adult and juvenile, who have reserved ISBN number 288. The list must include the isbn, title, member_no and name (i.e.: Smith, John) of each member who has the reservation. Additionally, the list should indicate whether the member is an adult or a juvenile. Output the records by name.
7
T-SQL Fundamentals Example 3
Write the preceding statement again using a CASE statement. You cannot JOIN to the adult or juvenile tables.
8
The Expired Cards page is a report on credit cards that have expired and credit cards that will expire soon. Output the customer ID, customer name and expiry date of the card for records with an expiry date prior to 30 days after the current date (today). Display the records by expiry date in descending order. Alias as: ‘ID’, ‘Name’, ‘Expires’.
T-SQL Fundamentals Example 4
9
T-SQL Fundamentals Example 5
The Large Orders page is a report displaying the largest number of items sold per order. Display the Order ID, Customer ID and Name along with the total number of items they ordered. Display the record with the largest quantity first. Alias as: “Order ID’, ‘Cust ID’, ‘Customer’ and ‘# of items’.
10
Advanced T-SQL
The Advanced T-SQL portion of the curriculum was a one week course utilizing SetFocus proprietary training materials. Among the objectives of this week were:
Expose students to a variety of different database challenges that they may face in a production environment.
Present new SQL 2006/2008 features not covered in other segments of the class.
Provide lab time to write T-SQL queries in response to specific problems.
Provide students with a library of over 100+ T-SQL samples that can be reused in production environments.
Several examples of items covered during this week are provided in the next three slides.
11
Advanced T-SQL Class Example 1Write a query that will take the input variables of @EmployeeID and @RateEffectiveDate and return the rate for an effective date.
12
Advanced T-SQL Class Example 2Use nested CTEs to summarize purchase orders and sales orders. Join the two CTEs and Rank the results in descending POTotal order.
13
Advanced T-SQL Class Example 3
The example below is one of several recursive CTEs that were studied.
14
The Piggy Bank Project was the first major project that we completed during the course.
This was a one week project where each student worked individually from a common specification.
Piggy Bank Project
15
Students were provided with a relational database and a six page specificatiion describing information regarding Customers, Accounts and Transaction Types
Additional requirements included Triggers, Views, ATM Procedures, Statement Procedures, Search Engine Queries, Test Requirements and Test Script Requirements.
My project deliverable included a set of Stored Procedures to implement the required functionality for the bank as well as 4 views, 1 DDL Trigger, 2 DML Triggers, and 94 individual test scripts to test the delivered functionality.
Piggy Bank Project
Entity Relationship Diagram
16
Stored Procedures and Views
17
Withdrawal Transaction
18
Withdrawal Transaction
19
Begin Try / End Try Logic is used
Withdrawal Transaction
20
Error Processing
Withdrawal Transaction
21
Withdrawal Transaction
22
Withdrawal Transaction
23
Withdrawal Transaction
24
Withdrawal Transaction
25
Process Deposit Transaction
26
ATM Get Balance
27
Mini-Adventure Works Project
28
The company Mini-Adventure Works (Mini-AD) is interested in taking historical spreadsheet (CSV) data for their list of products, vendors, and purchase order history, and loading the data into a SQL Server database.
Mini-AD wants the load process to work on a go-forward basis, so that new/modified products/vendors/orders can be loaded in SQL Server as well.
Mini-AD’s load process for orders should validate that any incoming orders with product numbers or vendor numbers that do not match an existing product/vendor number should NOT be written to the SQL Server database. Instead, this data should be written to an exception file and emailed.
Mini-AD also wishes to build two reports : one for top vendor and product sales, and the second for sales by vendor and ship method across years. 29
Project Specifications
Entity Relationship Diagram
30
SSIS Control Flow for Import Orders
31
SSIS Data Flow for Header Record
32
SSIS Data Flow for Detail Record
33
SSRS Report – Vendor Sales By Year
34
Processing Options and Subscriptions
35
36
Project Team:
Jessica Herndon
Martin Johnson
Dennis Schmid
In addition to completing technical tasks related to this assignmentthe team was required to develop a management presentation describing all project deliverables.
Blockflix – Team Project
Blockflix is a new and upcoming Movie rental company.They have opened a few stores nationwide and are in the process of creating a centralized database for tracking inventory, sales, customers, memberships. They have purchased SQL Server 2008 and need a new database created. The database will be used to track inventory of movies, customers and their membership types, and payments by customers. A new website will be created that uses the database to allow customers to rent movies online. This Web site requires the database to be completely functional. All access to the database must be restricted through stored procedures.
37
Project Specifications
38
Team Deliverables
Design a database to support central, store and kiosk locations
Populate the database with data sufficient to support testing of all developed processes
Develop Stored Procedures for all processing and to support all reports
Develop SSIS package to support the processing of movie inventory data as it is pushed to various BlockFlix locations.
Develop sample reports in SSRS
Present results to management
39
Database Design
40
Database Design
41
Database Design
42
Database Design
43
Database Design
44
SSIS Package Control Flow
45
SSIS Data Flow to Load Movie/Talent data
46
SSIS Data Flows to Load Movie/Talent data
47
XML file used to support the addition of movie information to inventory
48
Four SSRS Reports were created per spec
One report is shown below as rendered in SSRS as well as in PDF format
49
About me
In 2008 I moved to Suwanee, GA. with my wife and three children after falling in love with the area during a family visit two years earlier.My only regret is that we did not do this sooner!
I have made a living in the Information Technology field throughout my career in both technical and management rolesalthough my greatest job satisfaction has come from coding solutionsto problems presented to my team for review.
I have worked principally in the fields of database administration, system performance management and capacity planning.
As a recent graduate of the SetFocus SQL Master’s program I am seeking an opportunity to apply these skills in a SQL Server environment.