Sample TSQL , SSIS , SSRS projects

  • Hi Guys,

    Where can I get sample projects TSQL , SSIS , SSRS projects.
    that I can provide for students?

    Thanks

  • By TSQL do you mean a database? Are you looking for a project or the acutal database (which are 2 very different things). You have the AdventureWorks and WideWorldImporters databases, but both of those (especially the former) are well known with SQL Server, so I'm assuming that you've discounted those.

    What is your true goal here, however? Is it to teach the Students about all these tools? If so, any project you use you would have to know very well; so that you can provide (home)work for them with knowledge of what the right answers are, and how they should be obtained. You can't also ensure the areas you want to cover are in there, but also that perhaps things that are outside of scope aren't. That's going to be very difficult with completely foreign projects.

    If you are using wanting a teaching tool, have you considering designing one yourself? Then you can make sure you it meets the specific goals you require. Any courses I've been on, or I've heard about through colleagues have almost always provided bespoke projects for that course.

    Thom~

    Excuse my typos and sometimes awful grammar. My fingers work faster than my brain does.
    Larnu.uk

  • You could take the projects and data from these series:
    http://www.sqlservercentral.com/stairway/72494/
    http://www.sqlservercentral.com/stairway/72382/

  • Thom A - Monday, December 24, 2018 8:07 AM

    By TSQL do you mean a database? Are you looking for a project or the acutal database (which are 2 very different things). You have the AdventureWorks and WideWorldImporters databases, but both of those (especially the former) are well known with SQL Server, so I'm assuming that you've discounted those.

    What is your true goal here, however? Is it to teach the Students about all these tools? If so, any project you use you would have to know very well; so that you can provide (home)work for them with knowledge of what the right answers are, and how they should be obtained. You can't also ensure the areas you want to cover are in there, but also that perhaps things that are outside of scope aren't. That's going to be very difficult with completely foreign projects.

    If you are using wanting a teaching tool, have you considering designing one yourself? Then you can make sure you it meets the specific goals you require. Any courses I've been on, or I've heard about through colleagues have almost always provided bespoke projects for that course.

    VERY UNHELPFUL RESPONSE

  • Steve Jones - SSC Editor - Monday, December 24, 2018 8:26 AM

    THANKS STEVE

  • daniarchitect - Monday, December 24, 2018 11:16 AM

    Thom A - Monday, December 24, 2018 8:07 AM

    By TSQL do you mean a database? Are you looking for a project or the acutal database (which are 2 very different things). You have the AdventureWorks and WideWorldImporters databases, but both of those (especially the former) are well known with SQL Server, so I'm assuming that you've discounted those.

    What is your true goal here, however? Is it to teach the Students about all these tools? If so, any project you use you would have to know very well; so that you can provide (home)work for them with knowledge of what the right answers are, and how they should be obtained. You can't also ensure the areas you want to cover are in there, but also that perhaps things that are outside of scope aren't. That's going to be very difficult with completely foreign projects.

    If you are using wanting a teaching tool, have you considering designing one yourself? Then you can make sure you it meets the specific goals you require. Any courses I've been on, or I've heard about through colleagues have almost always provided bespoke projects for that course.

    VERY UNHELPFUL RESPONSE

    So asking questions is unhelpful? Asking if you had considered designing one yourself is also unhelpful?  If you are using pre-built projects you still have to have a full understanding of the project(s) if you expect to use them as a tool in a class.  If you take the time to design your own then you are also ensuring that you know the topic(s) you are trying to teach to others.

  • daniarchitect - Monday, December 24, 2018 11:16 AM

    Thom A - Monday, December 24, 2018 8:07 AM

    By TSQL do you mean a database? Are you looking for a project or the acutal database (which are 2 very different things). You have the AdventureWorks and WideWorldImporters databases, but both of those (especially the former) are well known with SQL Server, so I'm assuming that you've discounted those.

    What is your true goal here, however? Is it to teach the Students about all these tools? If so, any project you use you would have to know very well; so that you can provide (home)work for them with knowledge of what the right answers are, and how they should be obtained. You can't also ensure the areas you want to cover are in there, but also that perhaps things that are outside of scope aren't. That's going to be very difficult with completely foreign projects.

    If you are using wanting a teaching tool, have you considering designing one yourself? Then you can make sure you it meets the specific goals you require. Any courses I've been on, or I've heard about through colleagues have almost always provided bespoke projects for that course.

    VERY UNHELPFUL RESPONSE

    First, please take this as helpful criticism from a fellow instructor.  As "Red Green" says, "We're all in this together and I'm pullin' for ya1" ;D

    As an instructor, you should know that asking questions is not an "Unhelpful Response".  You're also being a bit blinded by your personal need rather than seeing one of Thom's questions as a unique opportunity to help students be more than the average bear when they finally make it out into industry and need to test their code or proof-of-principles even when there IS NO DATA TO TEST WITH.  Here's Thom's question that I'm referring to...

    If you are using wanting a teaching tool, have you considering designing one yourself?

    Like I said, you read that and responded as if Thom were some sort of chump that wasn't getting what you were talking about.  In fact, it's you that have missed what Thom is talking about and, as a result, are depriving your students from being exceptional and are depriving yourself from being an exceptional instructor that has little or no reliance on other people's "stuff" to teach what they need to teach.

    So, what do you do when you don't have data to test with or teach with?  What do you do to help your students be exceptional rather than the dreary "bots" that a lot of schools that teach databases and SQL seem to churn out?

    Teach THEM how to make the objects and, even more importantly, populate the tables FIRST and then teach them how to solve problems against the data they built.

    The very first step in that is to do what they do in every programming class except in SQL Programming classes (probably yours included)... teach them how to "count".  Every other programming class starts out with some form of "Hello World" demonstration.  the very next thing they do is they teach "how to count".  That also teaches the students different ways to loop in procedural code.  You need to teach students how to do the very same thing in SQL but WITHOUT THE USE OF LOOPS AND OTHER FORMS OF RBAR.  Call it what you want but I refer to such loopless loops as "Pseudo-Cursors" and it'll help set the mind of the students to think correctly about SQL and the paradigm shift required (see the note about rows/columns in may signature line below) to become exceptional.

    After that, teach them how to apply that lesson to quickly create a million rows of test data in just several seconds.

    Once that is done, then you can kill two birds with one stone.  When you give them a problem, tell them what the tables and data should look like and then have them create both as a part of their learning and grade.  Then have them solve the given problem.

    This will also keep you from becoming a slave to finding available datasets to teach your point and that means that you'll be able to teach a whole lot more points and do so much more quickly.

    Here are some articles that will get you thinking in these terms.
    The "Numbers" or "Tally" Table: What it is and how it replaces a loop
    Hidden RBAR: Counting with Recursive CTE's
    Generating Test Data: Part 1 - Generating Random Integers and Floats
    Generating Test Data: Part 2 - Generating Sequential and Random Dates

    Then, as an example, take a look at the following two articles to see how you might have the students create their own test data for a problem.  Both articles first manually create small "Make it work" test sets of data to demonstrate the proof of concept and then both generate a million rows of random but constrained test data to further prove not only the "Make it work" part of any code endeavor but the "Make it fast" part, as well   With only a little imagination,  you can do this type of thing for tables that need to be joined, etc, etc.

    Cross Tabs and Pivots, Part 1 – Converting Rows to Columns
    Hierarchies on Steroids #1: Convert an Adjacency List to Nested Sets

    Finally, there's the "and it ain't done 'til it's pretty part" and I've found that few instructors even touch on the subject.  Your examples should have a highly readable and understandable style (people seem to really like the style I use when they read code I've written) because you're teaching people that don't yet understand the code to read totally unstructured code.  Help them Develop a style the both you and they are proud of, and the people they work for in the future will appreciate.

    So, unlike Thom suggesting that you could build your own data, I'm telling you as a fellow instructor that you're missing a couple of prime opportunities to help your students shine when they get out into the real world and that, my friend, will make you shine as an instructor even if that's not a goal of good instructors.

    Heh... or I can be rude with all caps like you were...
    MAKE YOUR OWN DAMNED DATA AND TEACH YOUR STUDENTS HOW TO DO THE SAME:D;)

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • daniarchitect - Monday, December 24, 2018 11:16 AM

    Thom A - Monday, December 24, 2018 8:07 AM

    By TSQL do you mean a database? Are you looking for a project or the acutal database (which are 2 very different things). You have the AdventureWorks and WideWorldImporters databases, but both of those (especially the former) are well known with SQL Server, so I'm assuming that you've discounted those.

    What is your true goal here, however? Is it to teach the Students about all these tools? If so, any project you use you would have to know very well; so that you can provide (home)work for them with knowledge of what the right answers are, and how they should be obtained. You can't also ensure the areas you want to cover are in there, but also that perhaps things that are outside of scope aren't. That's going to be very difficult with completely foreign projects.

    If you are using wanting a teaching tool, have you considering designing one yourself? Then you can make sure you it meets the specific goals you require. Any courses I've been on, or I've heard about through colleagues have almost always provided bespoke projects for that course.

    VERY UNHELPFUL RESPONSE

    Lynn and Jeff have both kindly raised my thoughts on this response. I hope, however, that you don't treat your students the same way when they ask questions about what you are asking them and shout them down.  Many students learn by asking, and I personally think that it should be encouraged from them. The students that ask questions are the one's that want to learn; that could be because they find the subject matter hard and need further help or for the topic to be explained in a simpler manner, or it might be an area the student really has a keen interest in and wants to know more.

    Here, yes, it was a little different, I'm asking about what your goals are, but those are questions you might need to be asking your students when they ask. There aren't "bad" questions per say, but there can be "wrong" questions. The XY Problem is a great example of that, and your post to me felt like one of those. If your student, or fellow colleague, are asking you a question you don't like (because it's questioning you), or giving a suggestion you don't like, shutting them down is the worst thing you can do. It will only lead down a path that means that they are less likely to approach you in the future, for both council or when you need help. These forums work exactly the same way.

    Anyway, good luck. I truly hope you do consider making your own projects; I think you'll find it a great learning experience and so will your students.

    Thom~

    Excuse my typos and sometimes awful grammar. My fingers work faster than my brain does.
    Larnu.uk

  • If you generate data regularly, look into https://mockaroo.com/

    There are dozens of schemas in all manner of business domains. It is a great starting point, and the output can be a sql inserts or csv or json or many more options. This resource is growing nicely. No relationship to the site or founders, just a happy user.

Viewing 9 posts - 1 through 8 (of 8 total)

You must be logged in to reply to this topic. Login to reply