Link to home
Start Free TrialLog in
Avatar of aikimark
aikimarkFlag for United States of America

asked on

Looking for free relational database software recommendations

I'm going to teach a couple of friends (intro) SQL.  One of them has MS Access, as do I.  The other does not and is out of work because of the pandemic.  I don't want the second person to incur any costs, so I'm looking for free software.

I'd like to know your recommendations.  All three of us are on Windows.

My preference is to have a GUI for the database.  I've found that student typing can muddle the teaching/learning cycle when students are picking up very new/different knowledge.
SOLUTION
Avatar of Ryan Chong
Ryan Chong
Flag of Singapore image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
MS SQL Server Developer edition is free to download and install.  I would recommend this over the express version as it will allow you to play with features that the express version does not include.
sign up for Microsoft Azure where you will get a year free. The Microsoft SQL version has some slight differences to the on prem version.


Because Access is going to be different than mssql or MySQL/Maria db, you would be better off all using the same thing. With Microsoft 365 for nosiness, a subscription is only $8 per month to get access. Especially if you are using access for forms and reprts.
Avatar of aikimark

ASKER

Ryan, does the Express Edition have a GUI or is it CLI only?

Thanks for the MySQL tip, Joe.  I'll check it out.

I hadn't thought about Maria, Arnold.  How similar is the GUI to MySQL GUI?

Thanks for the 365 business price, Scott.  I'll offer that up as an option to the (currently) Access-less friend.  I could easily cover the first month out of my own pocket.  Would you please elaborate on "you would be better off all using the same thing"

I didn't realize that SQL Server had a 180 day trial.  Thanks for that tip, Brian.  I was going to pose this question to my local PASS group next week.  Now I can craft a more nuanced question.
Ryan, does the Express Edition have a GUI or is it CLI only?
To be frank, I'm not sure about that since I'm using the Developer Edition. But for Express Edition, you should able to connect it via SSMS as well, just as what we did last time when Developer Edition doesn't exist.

But I would suggest you to use Developer Edition over Express Edition.

Good to read:
https://stackify.com/what-is-sql-server-express/

SQL Server Express Limitations:

Before deploying SQL Server Express, you should make yourself aware of its limitations which include:
  • 1GB maximum memory used by the SQL Server Database Engine
  • The maximum size of each relational database is 10GB
  • SQL Agent is not included in Express. The SQL Agent is a background tool which enables administrators to automate tasks like backing up data, database replication setup, job scheduling, user permissions, and database monitoring.
  • The limit on the buffer cache for each instance is 1MB of RAM.
  • The relational database engine is restricted to the lesser of 1 socket or 4 cores.

the GUI  are components. Ssmse for SQL,
Workbench for MySQL and I think Maria DB which is an offshoot after oracle acquired MySQL, includes a graphical tool but I believe..

You can get toad for MySQL free. Shoukd work with Maria DB.
MySQL GUI tools as are the Maria DB work with either.

Much depends on what each is planning to learn.
Commonly, the thoughts, analysis are somewhat similar. The implementation changes based on the underlying DB in use..
Fiddle I think has the DB mimicking, representation that can be used

Here is the issue to consider.
As you are the teacher, your approach is what they will learn.

There are many online courses. Look at sone that offer auditing options versus free trials.
ASKER CERTIFIED SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
If you get ANY version of SQL Server, make SURE you get SSMS (SQL Server Management Studio), as it has all the UI bells and whistles for accessing/viewing/managing your SQL Server installation.  It, too, is free!

arnold, I didn't know about a free version of Toad.  It is a super utility.  I'll check it out.  Thanks.

Thanks for the clarification, Scott.
Thanks, Mark.  I'm just going to introduce them to basic SQL statements (DML category = select, insert, update, delete).  Not really going to cover typical DBA topics, such as backup and restore, design, and indexes.
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
If all you are going to do is go over basic sql statements, you may just want to use a fiddle site like https://www.db-fiddle.com/
Till very recently there were good free options for online SQL hosting (MySQL)...so anyone could set a Cloud database and have multiple users with permissions and all the bell and whistles thus having a somewhat central point but it seems they are gone/inactive...maybe is temporal...i have used them extensively in the past in order to have clients get the real "feeling"
I would recommend a cheap VPS ( they start from $3/mo) and setup a MySQL server and have everyone login and have access to exactly the same source
Scott,  I hadn't heard of db-fiddle.com  Thanks.  We might migrate to that once they've cut their teeth with a little GUI help.

John, if I had a more than two students a VPS seems to be a good solution.  Classroom management can be a challenge at times.
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
I'd recommend Oracle Database Express Edition (aka Oracle XE):
https://www.oracle.com/database/technologies/appdev/xe.html 

What is Included

Multitenant: Get isolation, agility, and economies of scale by managing multiple Pluggable Databases inside your Oracle Multitenant Container Database
In-Memory: Support real-time analytics, business intelligence, and reports by keeping your important data in the Oracle Database In-Memory column store
Partitioning: Enhance performance, availability, and manageability of your database with data partitioning that meets diverse business requirements
Advanced Analytics: Get valuable insights and deliver predictions from your data using Data Mining SQL, R programming, and the Oracle Data Miner UI
Advanced Security: Protect your sensitive data at the source and build end-to-end encrypted apps with layers of security including Oracle Transparent Data Encryption and Data Redaction
Resources:
  • Up to 12 GB of user data
  • Up to 2 GB of database RAM
  • Up to 2 CPU threads
  • Up to 3 Pluggable Databases

Why Use XE

Developers

Looking for the right database for your next development project? Learn more about Oracle Database using free XE.
  • Connect Oracle Database to your favorite programming languages and dev environments including Java, .NET, Python, Node.js, Go, PHP, C/C++ and more.
  • Learn SQL on the world's leading relational database, or experiment with Oracle's native support for JSON documents and spatial & graph data.
  • Use free dev tools and IDEs from Oracle including SQL Developer, SQLcl, and SQL Developer Data Modeler.
  • Install free Oracle REST Data Services (ORDS) to REST-enable your database.
  • For low-code app development, run Oracle APEX on top of ORDS and XE at no extra cost to rapidly build data-centric web apps that look beautiful in mobile and desktop browsers.


Oracle is a much narrower option. Presumably one is learning for a wider opportunity.
The more important part is the building of skills dealing with approach. The implementation as one develops can be applied.

I.e. Stracture thought.
Your business has customers, vendors, inventory and users.
The design of the DB structure..
I.e. Inventory orders that include the vendor from whom it was purchased, obtained maintains a chain when one needs to reorder.....

Now the issue often is on purely DB level where you want to minimize storage while maximizing info.
On the front end you want to maximize info while minimizing queries, complexity.

The reason to use ms SQL, MySQL, Maria DB, PostgreSQL, is that it makes it more likely that they could vulenteer their time to bolster their experience for nonprofit type organizations where oracle db's might not be as readily in use.
Once you join a firm that has mixed dbs, you could grow into that.
I disagree with you, arnold! It's your sight that is quite narrowed! And, btw, you're naming MySQL, so you're biting your own tongue ;-) LOL
Nevermind... In the end, if it's "just" about teaching SQL, it does NOT matter, which of those (free) dbms are going to be used, cause afterall, all of them can handle ANSI SQL, or at least they should!
I do know that Oracle acquired MySQL.and their evolving licensing.....

I think the approach of the SQL in MS SQL, MySQL, maria DB are somewhat similar.
Minimal exposure to Oracle, thus my suggestion.



I hope, you keep that in mind for future posts and comments ;-)
If you're not knowing enough about a certain product, please just be honest and say/write so!

Btw: what approch in detail?! they're all just relational DBMS (as Oracle)... I don't see any "special" approach there tbh
the PL/SQL that it uses is an acquired skill and some are when learned are easier to follow.
The name space and related handling require a more advanced skillset to manage/administer.
I recall the OP's initial question:
I'm going to teach a couple of friends (intro) SQL.
Nobody said anything about PL/SQL or any other built-in programming language!

Plus, the subject states "Looking for free relational database software recommendations"
-> the keyword here is FREE
Thus, naming all of those RDBMS from above is absolutely fine, but there's no need to "talk other stuff down"!
As I noted, the ones I mentioned I think are easier to teach. as compared to Oracle which is more involved.
Over time the person who learns inherits the flaws of the teacher.
This is why using Access IMHO, would not be a good choice.

Is PL/SQL not the tool set for Oracle?
MS sql as time goes keeps adding tools that have been part of Oracle's feature for a long time.
From DB partitioning to other built in functions, row_number and others.

I did not talk other stuff down, I made a point that it s more complex and might not be as suitable for an initial foray.

i.e. a person you want to teach to ride a bike, you would not start with a motorized one.

The beauty of SQL is that you can use it in all RDBMS that are available as well as other non-RDBMS.
Flavors, functions and features of any database can easily be learned over time and the knowledge of how one database works can be transfered and used in another with minimal learning effort using the DBMS manual.
It all comes down on the developer on how he/she wan'ts to utilize the DBMS of choice, thus what features, flavors and functions he/she prefers to have for their applications.

Regards,
    Tomas Helgi
I did not talk other stuff down, I made a point that it s more complex and might not be as suitable for an initial foray.
And this is just NOT true, regarding "teaching SQL"!!
Here, it does not matter which tool or RDBMS will be used, they're all equal in that case and none of them is less or more complex; in the end, it's just plain SQL ;-)
I understand.
Consider the question, person who will be undertaking the task has an existing base of knowledge access, ms SQL. and is asking for..a cost free to get a third person into the group.
IMHO going the oracle route while could be advantageous to the person with existing SQL knowledge to advance their skill would not be helpful to the two people who are the intended students.

The question is not a referral to a available online courses to which the other two should be referred. It is the person who will be undertaking the task.

Let's reduce to a rudametry (of course it will support my posiition.)

Would you agree that teach what you know Versus learn while you teach others?
Would you agree that teach what you know Versus learn while you teach others?
No, because it's actually BOTH: teaching, what you know AND learning while you teach!
Why oh why are you so narrow-minded?! Why should someone who's coming from MS Access and wants/needs to learn "REAL" database programming (including db structuring etc.) only stick to MS SQL Server, MySQL or MariaDB?! Just because you think, their learning curves will be kind of "low" and so they will advance faster?! I truly hope, that this is NOT your approach regarding teaching & learning in general ;-)                   
Because if the initial entry into a subject matter appears to the one being thought as being tough, the process will not achieve the intended goal.
Having presented the option, and you've done so persuasively., the asker having info on the friends who would be partaking in the learning and info provided to choose the path.


and you've done so persuasively
Just like the other fellow experts here, I'm just trying to help and share my thoughts through discussions. Hopefully, in the end, everything gets a bit clearer for the OP ;-)
@aikimark/author:  He buddy!  Been following the discussions.  Is it any clearer now?  ;-)
As for me, I'm collecting all of these thoughts into a document to add to my consultancy collection, which is one of the major reasons I participate in EE.
I'm collecting all of these thoughts into a document to add to my consultancy collection, which is one of the major reasons I participate in EE.

try share that as an article and I believe it would benefit for all of us @ EE *grin*
I've been doing that for several years now, so I have quite a collection.
A "true" consultant knows the basics about the "competition" as well as his own narrow area of expertise, so he can advise clients from an informed point of view.

For example, a lot of folks have asked me about the "free" office packages like google docs and Open Office because the idea of "free" is really attractive, but I give them the benefit of what I've learned about these "free" ones not having the automation and programmable aspects that ones like Microsoft Office have.  I've had clients try the free ones, only to change to the paid ones (especially MS Office) because they want the automation/programmable capabilities, which they finally decided are worth paying for.  It's these extras that make MS Office worth the price.  Any dang fool can make a spreadsheet program or text editor, etc.

I've had clients try the free ones, only to change to the paid ones (especially MS Office) because they want the automation/programmable capabilities, which they finally decided are worth paying for.  It's these extras that make MS Office worth the price.
yes, the ease of integration within the Microsoft products, one of the selling points that other products could lack of.
It's been a very long day for me.  Just getting back to the question thread.  Sorry for the delay.

I'll close this thread tomorrow when I've had a chance to catch up on my sleep.

The short term problem resolved itself when the person without MS Access found a ver 2003 disk.  He successfully installed Access.  I will send both friends .mdb files to begin the course and do their exercises.  If they want to get past the basic DML statements, we'll probably install SQL Server, although Azure Data Studio was an interesting suggestion from the local PASS meetup (TriPASS) last night.

A second update:

The person that just installed MS Access 2003 landed a new job.  To prepare for the job, he is taking some SAS classes.  Stats is his field.

I recommended that he look to see if Proc SQL is part of any of his courses.  It is!  So he may not be part of my SQL training.  I may have only one student.
So he may not be part of my SQL training 

yea, SAS syntax has big difference from what SQL that we used to.
I started learning databases with Access 2.0. Access is quite handy as a learning tool with the user interface.
If the user is used to Windows I would opt for a licence for MS Access - even if it costs some money. Check out the licensing for Office365 - at least it is not that much per month. Be aware to get the correct Office365-package as the cheaper ones do not include Access.
The title here is

Looking for free relational database software recommendations


And you're coming up with MS Access??!! Seriously?? This is just like: I wanna learn to fly a jet.... Okay, then let's put some wings onto a car and try if you can get up.... OMG! Please stop making such silly suggestions!!!