Introduction to SQL workshop idea?

I’ve thinking about SQL lately, how far I’ve come in my personal develpment, and how useful it has been for me as a tester. I then thought about how do other testers learn to write SQL to help them with their testing? Would a workshop be useful, so if anyone has questions or gets stuck they can ask me or those around them, rather than frustrated at an online course?

I thought about the key areas and commands I have used in my time as a tester, so whilst there could be things that might be useful for a developer to know, and one day for a tester to know, they would be beyond the scpe of a half-day, introduction course.

In terms of areas, this is what I’m thinking:

SELECT

  • (*)
  • Columns
  • Count
  • Distinct

WHERE

  • =
  • Other symbols, >, <, !=, etc
  • In
  • Is null
  • Like %
  • And
  • Between
  • Exists
  • Not

ORDER BY

  • Columns
  • Numbers
  • Asc
  • Desc

CRUD

  • Insert
  • Update
  • Delete

TABLES

  • Differnet joins,focus on Inner with a bit of Left

What I’m thinking is each of those can be a themed section together, gradually building up, so you learn the different ways you can select data, then narrow it down, order what you get, manipulate data, and add more tables.

One concern I have is that each attendees will need a populated database, and some way to access it. I’m used to using Oracle SQL Developer or MS SQL Server Management Studio, depending on the type of database.
As I’ve only just thought about this, I haven’t had chance to research, but I was wondering if it’s possible to have a small database (couple of tables, maybe 1000 records in reach) that I can save to somewhere like GitHub, so that before the workshop everyone can download it and run locally, without fear of doing anything to anyone elses data.
I also know not everyone gets time to do that, so would there be a way to have it online people can access instead of download, though I then risk things if it does more than commit within a session.

I would need to design and test the workshop, but that’s the idea of it.

I know not all testers will use SQL, and others will know more than the workshp will offer, but I figure there are some who could benefit from knowing but not had the chance to learn. When I was testing internal web pages, I would need to use SQL to find data I needed, or prove that the front-end called the back-end correctly (saying something is successful doesn’t always mean that!).

2 Likes

SQLite is pretty low maintenance for this sort of thing provided particular commands you are teaching are not inherent to a particular implementation of SQL. If your students happen to have azure credits it is relatively easy to populate a mssql db with a demo database.

1 Like

Oh an SQL Fiddle could be an option too?

1 Like

Hi Lee, I think it would be useful to be clear on the goals and outcomes for this course. Things like, be able to write a query that gathers information from two or more tables or learn to filter down from large databases to specific items and so on.

I think it would also be useful to give a good few examples of where this skill might come in like the one in your intro on web pages. Maybe look to have 4 or 5 of those showing the range of applications.

Hi Ady,

I was thinking giving an example of a complex SQL at the start, and say how whilst it looks like seeing The Matrix, as the workshop progresses we will break it down into manageable chunks, until they’re able to understand it and write their own version.

I’ll try to think of some examples of when a tester would want to query a database, even if they think “I just test web pages, reports, etc”.

1 Like