A better database management system, for teaching databases I have been teaching databases, over the last few weeks, to key-stage 3 pupils (year 7 and 8). 

The school I am at uses Microsoft's Access. This seems adequate in many ways. However it has many problems, that frustrate pupils and thus, get in the way of learning.

For example:


Continuously asking “do you want to save?” (It should just save. I would not be entering this if I did not want it saved. This is not the 1980's when saving work would take a considerable chunk of your day. It could have it done before I have realised that it has asked.) I have noticed that pupils often select no, even though I spend a considerable time, telling them to save often, to save when prompted, etc. There was a study that showed that when experts see a save prompt pop up it MS-word, they click yes without even reading it. However when a novice sees one, they read it 20 times, then click no (thus loosing there work). When asked the novices said, that the computer was asking permission, so it must be something dangerous.
Not letting us rename an object, if it is open (this will seem normal to Microsoft user, as this is how there file-system works, bit it is confusing).
Not letting us delete something that has a error. I get called over a lot to help a pupil that is getting errors, they can see what is wrong, and want to fix it, but the computer won't let them fix it until it is fixed. e.g. They know that they need to change view to fix the error, but the computer will not let them change view until they fix it. The work around is often unintuitive.
Or half adding a field to a table, it will not let you do anything until it is complete. Pupils see their error, and try to delete the field, but this is something and it is not allowed, until they finish. I have to tell them to set it to something random, then delete it. I use this as an opportunity to talk about usability design.
There are others, but I have not seen them all, and can not remember all that I have seen.


Can you tell be of a better database management system, for teaching databases?
At the state college I work for we stopped teaching Access as the "intro to databases" class a while ago.  I taught the class this term using MySQL and MySQL Workbench.  We had it installed on our lab machines (windows) and I also provided a VirtualBox VM with a Linux desktop, the MySQL server, the Workbench program, and a few other goodies.  

Since I ended up with 2 extra class periods after the content was all delivered, I spent a little time showing different ways of interacting with the mysql server (command line, phpMyAdmin, code interaction via PHP and Java) as well as the mysql server management from the Linux class I teach.

Our progression in our AS degree track - 

Intro to SQL - all inserts, updates, selects, joins, transactions, views, stored procedures.  Nothing on creating tables - just working with existing databases and tables.

Databases 2 - all table structure and relationships, referencing back to Intro class constantly.

second semester programming classes (C++ or Java) get into workign with a database from a programming language.

For our batchelors program, there is more use of programming and databases, with students learning MongoDB.  The batchelors level programming classes all use database connectivity, although with the Android class we move from mysql or mongo to sqlite.