37
ROBERT PARKIN SQL Server 2008 Portfolio Phone: (973) 566-9708 Email: [email protected] http://www.linkedin.com/pub/robert-parkin/1b/422/7 93

Robert Parkin Portfolio

Embed Size (px)

DESCRIPTION

This is my portfolio of work performed at the SetFocus SQL Server Masters Program.

Citation preview

Page 1: Robert Parkin Portfolio

ROBERT PARKIN

SQL Server 2008 Portfolio

Phone: (973) 566-9708Email: [email protected]

http://www.linkedin.com/pub/robert-parkin/1b/422/793

Page 2: Robert Parkin Portfolio

Table of Contents

Introduction………………... 3 JungleBooks………………. 4 Library……………………… 8 PiggyBank…………………. 14 MiniAdventureWorks2008..21 BlockFlix…………………… 28 About Me…………………... 37

Page 3: Robert Parkin Portfolio

Introduction This portfolio contains examples of my development skills in MS SQL Server

2008. It is a result of my work during a 8-week-hands-on experience with the SetFocus Master’s Program.

SetFocus utilizes Microsoft Official Curriculum in conjunction with its own materials to produce some of the following coursework:

○ Querying using Transact SQL○ Implementing and maintaining a MS SQL Server 2008 Database○ Designing an MS SQL Server 2008 Infrastructure○ Designing Security for MS SQL Server 2008○ Designing High Level Availability Database Solutions using MS SQL

Server 2008○ Troubleshooting and Optimizing Database Servers using MS SQL Server

2008○ SQL Server Integration Services○ SQL Server Reporting Services

In addition to the coursework and programming labs, the program included challenging real-world projects where I have applied the skills experienced in the class.

Page 4: Robert Parkin Portfolio

JungleBooks JungleBooks is a book company which has a database consisting of Books,

Authors, Orders and Customers In this project a database diagram is given and a database is created

according to the diagram. Fictitiously, we are working with an application programmer who is building a

client application using .NET. We are asked to create queries for different forms of the application. For example, The Cheap Books form displays available books below a

certain price. The user enters 15 form field. Return the ISBN, Title and Publisher in order by Title.

The sample code would be…

Page 5: Robert Parkin Portfolio

JungleBooks Entity Relationship Diagram

Page 6: Robert Parkin Portfolio

Large Orders Page from JungleBooksThe 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”.

Page 7: Robert Parkin Portfolio

Search for Customers by Credit Card Page From JungleBooks

The Search For Customers By Credit Card Page allows the user to search by the last four digits of their credit card number. The user inputs “7889” into the form field. Return all information from the Customer table. Alias as:

‘ID’, ‘Name’, ‘CurrentAddress’, ‘CardType’, ‘CardNumber’, ‘Expires’. In case you have different customers using the same credit card, order by Customer ID in ascending order.

Page 8: Robert Parkin Portfolio

Library The Library Database was created to

support the principal functions of a lending library’s day-to-day operations.

Create SQL Scripts using Union, Case Statements, Temporary Tables and Aggregates.

Page 9: Robert Parkin Portfolio

Library Entity Relationship Diagram

Page 10: Robert Parkin Portfolio

Get Adult/Juvenile Reservations I

This query uses a Union to combine the results of Adults who have reserved ISBN 288 and Juveniles who also have IBSN 288 reserved.

Page 11: Robert Parkin Portfolio

Get Adult/Juvenile Reservations II

This query returns the same result set as the previous slide but using a Case Statement instead of a Union.

Page 12: Robert Parkin Portfolio

Create Temporary Table The purpose of the query is to retrieve a list

of overdue books. The results will be stored in a Temporary Database to be queried later.

Page 13: Robert Parkin Portfolio

Querying a Temporary Table Select Members and total number of

books overdue.

Page 14: Robert Parkin Portfolio

Piggy Bank The Piggy Bank Database simulates bank operations

such as Overdraft Accounts, Customer and Account relationships and Transactions

Create a Normalized Database Create Tables with Primary Keys, Foreign Keys,

Identity Columns, Check Constraints, Un-clustered Indexes, Triggers to not allow deletion/modification of data.

Create Stored Procedures with parameter validation and error handling using Begin Try/EndTry, BeginCatch/EndCatch.

Create User Defined Data Types, Functions and Views

Page 15: Robert Parkin Portfolio

Piggy Bank Entity Relationship Diagram

Page 16: Robert Parkin Portfolio

Piggy Bank Stored ProcedureCreate a Deposit I

Page 17: Robert Parkin Portfolio

Piggy Bank Stored ProcedureCreate Deposit II

Page 18: Robert Parkin Portfolio

Piggy Bank Stored ProcedureCreate Deposit III

Page 19: Robert Parkin Portfolio

Piggy Bank Stored ProcedureCreate Deposit IV

Page 20: Robert Parkin Portfolio

Transaction Table Delete/Update Trigger

To protect the integrity of the Transaction Table an Instead of Trigger was created to not allow Deletions or Updates to the table.

Page 21: Robert Parkin Portfolio

MiniAdventureWorks2008 Project The MiniAdventureWorks2008 project allowed

us to work with Sequel Server Integration Services (SSIS) and Sequel Server Report Services (SSRS).

The Database was created and loaded from multiple .csv files.

Create Directory (if it does not exist). Transfer files so that they would not be

processed more than once. Send emails to the appropriate personnel if

error conditions were found.

Page 22: Robert Parkin Portfolio

Processing the Purchase Order Data

Control Flow

Page 23: Robert Parkin Portfolio

SSIS Data Flow Process Purchase Order Header I

Page 24: Robert Parkin Portfolio

SSIS Data FlowProcess Purchase Order Header II

Page 25: Robert Parkin Portfolio

SSRS Vendor Sales By Year

Report uses two Data Sets. ShipMethod is used to create a parameterdrop down box

Report also uses a Shared Data Source.

Report Layout

Page 26: Robert Parkin Portfolio

Vendor Sales by Year Results showing Drop Down Box andannotations for Parameter chosen, Page X of Y, Date Run and Run By.

Page 27: Robert Parkin Portfolio

Top Vendor/Product Sales Report:Uses four ParametersWill Rank Product within Ranked Vendors.

Page 28: Robert Parkin Portfolio

BLOCKFLIX PROJECT

Brian Henry

Marcus Matthews

Robert Parkin

Page 29: Robert Parkin Portfolio

BlockFlix was a group project.Specifications 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.

Page 30: Robert Parkin Portfolio

Development Tasks Phase I Design Database Create Test Data to ensure

programmability and error free environment

Load XML Data Create Stored Procedures for

processing and lookups Create SSRS Packages Create SSIS Packages

Page 31: Robert Parkin Portfolio

Loading Genre Data (SSIS)

Raw Data in .csv files

Data in the Genre Table

Create SSIS Data flow to process

Page 32: Robert Parkin Portfolio

XML DataThere were a few issues we had to overcome to process the XML.

One of the challenges of processing the XML was formatting it properly and creating a schema.

Another problem we had to overcome was entering the quantity of the movie into our Inventory Table. This was done by using a OLE DB Command Transformation and calling a proc (LoadMovieInventory) to insert records in a While Loop until it looped the appropriate amount of times.

Also had to load talent for every movie.LoadMovieTalent

Original XML (one tag)

Modified XML Put tag around each item

Page 33: Robert Parkin Portfolio

Load Inventory/Talent SSISAlso used SSIS to load all Base Tables (Demo)

Page 34: Robert Parkin Portfolio

Viewing Member’s Queue

Current Member Queue (GetMemberQueView)

Page 35: Robert Parkin Portfolio

Checking Out a Movie (Cont.)

Current Member Queue (GetMemberQueView)

When Member returns Dark Knight they will receive Saving Private Ryan.

Page 36: Robert Parkin Portfolio

uspGetTopRentalByMonth

Stored Procedure used in the Top Rentals by Month Report (SSRS).

Results

Page 37: Robert Parkin Portfolio

About MeI am a software developer with over 15 years of experience. I have programmed in COBOL, Oracle Forms and PL/SQL. I have worked in the Shipping Industry, Pharmaceutical Industry and at a Higher Education Institution.

After working 11 years at Maher Terminals, the company was sold to Deutsche Bank in 2007. Deutsche Bank decided that they did not want to do any in house programming. After completing the final project to maintain the gate system so that the transition between the in house system and the newly purchased system was stable, I was laid off in August 2008. I accepted a one year OpenVMS consulting job for Fordham University in the Bronx, NY to help maintain the Mainframe system while they converted their software to an Oracle platform. That contract expired in December 2009.

After spending three months on unemployment, I decided to attend the SetFocus SQL Server 2008 Masters Program to update and improve my skills in SQL.

I am currently looking for a Database Developer/Administrator position where I can use the skills I have developed during my previous work experience and the new skills I have learned while attending SetFocus.

I am a four year Navy veteran who has received an Honorable Discharge, Good Conduct Medal, Naval Expeditionary medal. I received two Letters of Commendation from my Commanding Officer for outstanding Postal Audits.

I am currently the President, Newsletter Editor and Webmaster of the West Essex Philatelic Society. This society has been in existence since 1930 and is one of the most prestigious Philatelic (Stamp Collecting) Societies in the nation.