Robert ParkinSQL Server 2008 PortfolioPhone: 	(973) 566-9708Email:	rsparkin@comcast.nethttp://www.linkedin.com/pub/robert-parkin/1b/422/793
Table of ContentsIntroduction………………...	3JungleBooks……………….	4Library………………………	8PiggyBank………………….	14MiniAdventureWorks2008..	21BlockFlix……………………	28About Me…………………...	37
IntroductionThis 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 DatabaseDesigning an MS SQL Server 2008 InfrastructureDesigning Security for MS SQL Server 2008Designing High Level Availability Database Solutions using MS SQL Server 2008Troubleshooting and Optimizing Database Servers using MS SQL Server 2008SQL Server Integration ServicesSQL Server Reporting ServicesIn addition to the coursework and programming labs, the program included challenging real-world projects where I have applied the skills experienced in the class.
JungleBooksJungleBooks is a book company which has a database consisting of Books, Authors, Orders and CustomersIn 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…
JungleBooksEntity Relationship Diagram
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”.
Search for Customers by Credit Card Page From JungleBooksThe 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.
LibraryThe 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.
Library Entity Relationship Diagram
Get Adult/Juvenile Reservations IThis query uses a Union to combine the results of Adults who have reserved ISBN 288 and Juveniles who also have IBSN 288 reserved.
Get Adult/Juvenile Reservations IIThis query returns the same result set as the previous slide but using a Case Statement instead of a Union.
Create Temporary TableThe 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.
Querying a Temporary TableSelect Members and total number of books overdue.
Piggy BankThe Piggy Bank Database simulates bank operations such as Overdraft Accounts, Customer and Account relationships and TransactionsCreate a Normalized DatabaseCreate 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
Piggy Bank Entity Relationship Diagram
Piggy Bank Stored ProcedureCreate a Deposit I
Piggy Bank Stored ProcedureCreate Deposit II
Piggy Bank Stored ProcedureCreate Deposit III
Piggy Bank Stored ProcedureCreate Deposit IV
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.
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.
Processing the Purchase Order DataControl Flow
SSIS Data Flow Process Purchase Order Header I
SSIS Data FlowProcess Purchase Order Header II
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
Vendor Sales by Year Results showing Drop Down Box andannotations for Parameter chosen, Page X of Y, Date Run and Run By.
Top Vendor/Product Sales Report:Uses four ParametersWill Rank Product within Ranked Vendors.
Brian HenryMarcus MatthewsRobert ParkinBlockFlix Project
BlockFlix was a group project.SpecificationsBlockflix 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.
Development Tasks Phase IDesign DatabaseCreate Test Data to ensure programmability and error free environmentLoad XML DataCreate Stored Procedures for processing and lookupsCreate SSRS PackagesCreate SSIS Packages
Loading Genre Data (SSIS)Create SSIS Data flow to processRaw Data in .csv filesData in the Genre Table
XML Data	Original XML (one tag)There 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.LoadMovieTalentModified XML Put tag around each item
Load Inventory/Talent SSISAlso used SSIS to load all Base Tables (Demo)
Viewing Member’s QueueCurrent Member Queue (GetMemberQueView)
Checking Out a Movie (Cont.)Current Member Queue (GetMemberQueView)When Member returns Dark Knight they will receive Saving Private Ryan.
uspGetTopRentalByMonthStored Procedure used in the Top Rentals by Month Report (SSRS).Results
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.

Robert Parkin Portfolio

  • 1.
    Robert ParkinSQL Server2008 PortfolioPhone: (973) 566-9708Email: rsparkin@comcast.nethttp://www.linkedin.com/pub/robert-parkin/1b/422/793
  • 2.
  • 3.
    IntroductionThis portfolio containsexamples 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 DatabaseDesigning an MS SQL Server 2008 InfrastructureDesigning Security for MS SQL Server 2008Designing High Level Availability Database Solutions using MS SQL Server 2008Troubleshooting and Optimizing Database Servers using MS SQL Server 2008SQL Server Integration ServicesSQL Server Reporting ServicesIn addition to the coursework and programming labs, the program included challenging real-world projects where I have applied the skills experienced in the class.
  • 4.
    JungleBooksJungleBooks is abook company which has a database consisting of Books, Authors, Orders and CustomersIn 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…
  • 5.
  • 6.
    Large Orders Pagefrom 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”.
  • 7.
    Search for Customersby Credit Card Page From JungleBooksThe 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.
  • 8.
    LibraryThe Library Databasewas 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.
  • 9.
  • 10.
    Get Adult/Juvenile ReservationsIThis query uses a Union to combine the results of Adults who have reserved ISBN 288 and Juveniles who also have IBSN 288 reserved.
  • 11.
    Get Adult/Juvenile ReservationsIIThis query returns the same result set as the previous slide but using a Case Statement instead of a Union.
  • 12.
    Create Temporary TableThepurpose of the query is to retrieve a list of overdue books. The results will be stored in a Temporary Database to be queried later.
  • 13.
    Querying a TemporaryTableSelect Members and total number of books overdue.
  • 14.
    Piggy BankThe PiggyBank Database simulates bank operations such as Overdraft Accounts, Customer and Account relationships and TransactionsCreate a Normalized DatabaseCreate 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
  • 15.
    Piggy Bank EntityRelationship Diagram
  • 16.
    Piggy Bank StoredProcedureCreate a Deposit I
  • 17.
    Piggy Bank StoredProcedureCreate Deposit II
  • 18.
    Piggy Bank StoredProcedureCreate Deposit III
  • 19.
    Piggy Bank StoredProcedureCreate Deposit IV
  • 20.
    Transaction Table Delete/UpdateTrigger To protect the integrity of the Transaction Table an Instead of Trigger was created to not allow Deletions or Updates to the table.
  • 21.
    MiniAdventureWorks2008 Project TheMiniAdventureWorks2008 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.
  • 22.
    Processing the PurchaseOrder DataControl Flow
  • 23.
    SSIS Data FlowProcess Purchase Order Header I
  • 24.
    SSIS Data FlowProcessPurchase Order Header II
  • 25.
    SSRS Vendor SalesBy Year Report uses two Data Sets. ShipMethod is used to create a parameterdrop down box Report also uses a Shared Data Source.Report Layout
  • 26.
    Vendor Sales byYear Results showing Drop Down Box andannotations for Parameter chosen, Page X of Y, Date Run and Run By.
  • 27.
    Top Vendor/Product SalesReport:Uses four ParametersWill Rank Product within Ranked Vendors.
  • 28.
    Brian HenryMarcus MatthewsRobertParkinBlockFlix Project
  • 29.
    BlockFlix was agroup project.SpecificationsBlockflix 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.
  • 30.
    Development Tasks PhaseIDesign DatabaseCreate Test Data to ensure programmability and error free environmentLoad XML DataCreate Stored Procedures for processing and lookupsCreate SSRS PackagesCreate SSIS Packages
  • 31.
    Loading Genre Data(SSIS)Create SSIS Data flow to processRaw Data in .csv filesData in the Genre Table
  • 32.
    XML Data Original XML(one tag)There 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.LoadMovieTalentModified XML Put tag around each item
  • 33.
    Load Inventory/Talent SSISAlsoused SSIS to load all Base Tables (Demo)
  • 34.
    Viewing Member’s QueueCurrentMember Queue (GetMemberQueView)
  • 35.
    Checking Out aMovie (Cont.)Current Member Queue (GetMemberQueView)When Member returns Dark Knight they will receive Saving Private Ryan.
  • 36.
    uspGetTopRentalByMonthStored Procedure usedin the Top Rentals by Month Report (SSRS).Results
  • 37.
    About MeI ama 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.