I started a Poll on Locals.com about Lunduke members’ Experience Levels doing “Database Stuff” (because I just installed MySQL and I’m thinking back to Community College “Database Intro” activities).
As far as I can tell, EVERYONE in “DevOps” says that “Changing the Database” Is a Nightmare.
My guess is that MS Access (database) lets you change Tables and Relationships as much as you like, but there’s no way that any “Commercial Database” would allow such “Dangerous Behavior.” The sample MySQL Database “sakila” appears to use a lot of SQL Features, as compared to a “first semester” college database.
Anyway - I wanted to make sure that the “Forum” side of the Lunduke Community was able to look at my Poll … and maybe leave Comments (either here or there).
I’d avoid a heavy sql solution like MySQL unless you really do need what it has to offer over plain text formats like CSV. Remember, fixed width text is an option, too. And there is always SQLite if you want a halfway option.
Hey … I’ve got 12 Logical Cores that are Only at 3% Utilization - CLEARLY, Tracking my 2025 Spring Gardening Activities with a Spreadsheet is not the “Right Answer” (there must be at least 3 Tables involved … maybe 4).
Basically, I’m trying to get my money’s worth out of “that class” I took 20 years ago. Also, I want to learn a bit more about Why Business “Upgrades” (Migrations) are so much worse than in the College “Migration Projects.”
Yeah … I wasn’t planning to duplicate the poll itself, but I’m betting that the “Forum” will be a majority of “Wizards” (and Locals.com will be mixed among all the other choices). I guess we’ll see what happens! Do they allow Emoji (UTF-8) in SQL Table names now?
Idk where to place myself. I just completed a class on DBMSs. I guess the final assignment had 29 or so tables, and it appears I did pretty well on it (it is probably small, but I felt pretty proud of it :)). That was probably my favorite assignment as I dealt with at least somewhat realistic data and had a bunch of relevant (in my opinion) problems to solve. Otherwise, I don’t really have any experience. \(ツ)/
Thanks. I got logged out of Locals when I turned on my computer, so I was like, nah, I’ll see what’s up on the forum (Locals never used to have session time limits, lol). But this one is worth logging back in and adding to your total.
I am super-familiar with databases - not one of those who knows every last nano-detail (foreign keys, triggers, and stored procedures are a few things on my learning list) but I’ve been working with MySQL for over a decade. I also like to use SQLite (I’ve used it in C and Python). I can do some crazy JOINs and stuff, but there is always more to learn.
We use Postgres extensively at work, I recommend it over MySQL. It has a lot of very useful features that you’ll probably want as time goes on, and migrating from one db to another is a colossal pain.
My go-tos if I don’t know specifics that would drive to another choice, are SQLite and PostgreSQL. The latter especially for major high-concurrency applications, the former especially for small programs.
That being said, if you have something that requires MySQL, might as well install it
Big nostalgia times: a couple months from now will be 25 years since my first job out of high school, sitting at a desk in Johnson Space Center, no one really paying attention to what I was doing, reading this and teaching myself SQL.
Still one of the coolest jobs I’ve ever had. The SQL was to collate the output of running some menial IT task on a bunch of workstations… but the workstations were scattered all around a spaceship factory, NASA in full swing building ISS modules at the height of the shuttle program. So when I wasn’t learning Perl and SQL, I was wandering unsupervised around pretty much the coolest place on the planet.
My mom worked there for decades, she just retired a few months ago. I applied for some student summer intern thing and wasn’t accepted, so she just talked to some people and got me an actual job offer instead. I ended up working there for five years, writing a bunch of code for the ISS program, planning out what order to launch things and what experiments it could run.
And to bring it back, a ton of that code revolved around MySQL. Back in the early 2000s MySQL was garbage but it was extremely hot garbage; it was a joke of a database system but faster than anything else by a wide margin. Back then it didn’t support any sort of data integrity; you got not null and that was basically it, no foreign keys no triggers no nothin’. But the price was right and it was crazy fast for 2001.
Anyway Postgres is better. It’s a general object storage system with a SQL front end, meaning you can do not-quite-sql things like JSON columns (not “a column with a string of JSON in it,” I mean the database is aware that it’s JSON and will query fields in it), array columns, etc. Crazy recursive joins, stored procedures in various languages, etc. And at this point it’s just as easy to set up as MySQL, so, use the real one. /shrug
This reminds me of “Calculated Fields” in the Reports of MS Access Database - except the JSON is IN the Tables (if I understand that correctly).
RE: Flat Files as “Database” - I think Visual BASIC (VBA) in Excel allowed people to do “Interesting Things” to handle information, which might be why “some people” treated Excel as their preferred “Database.”
RE: The File Systems vs “Data Apps” - I get the feeling that COBOL may have been used for “Database-like Information Management.” Something like MS Access is probably “monolithic” in the sense that OS + App are “tightly integrated.” However, I could see the change in COBOL for Dates going from MM/DD/YY to MM/DD/YYYY as “Cascading into a Nightmare-Fuel-Dumpster-Fire” (as Other “Apps” used the same File Storage). (just my guess)
Since 1984, using Info on a Prime OS minicomputer - I have been working in data professionally.
Yes, one can indeed change columns and column types after data is entered - not just Access.
Access is a fine local database.
MySQL that you are playing with is excellent - and quite a bit of the internet runs on it.
For learning SQL, I like to recommend SQLite - unless you have a job or school that uses something different. Then use what they do if you can as each platform as their own take in SQL. SQLite is a single file per database - and is super small and efficient. It’s not really lite at all in terms of capability.
My favorite db is Oracle - and they have free versions that are suitable for learning on and local projects.
Well, Snowflake is my favorite now, but it’s cloud only and the free tier only lasts a month before you have to start over.
Dbeaver has a free community app that runs in all platforms and connects to most all dbs. I like it much better than SQL Workbench which is MySql Only. Give it at try
I dunno. RDMSs ain’t too hard to understand, people just need to take the time to actually learn them… more or less like everything else.
When you say “change the database” I am assuming you mean alter and not switch out the RDBMS. Alter isn’t too rough unless the application accessing the DB breaks from the alter. Changing out the RDBMS, otoh, can be terrible, but mostly due to SQL dialects. Tooling exists to handle those kinds of transformations. Again, the application side of things would be the worst part.
That’s something I didn’t expect. I always had the feeling that COBOL and SQL were two OLD “Mainframe Features” which never changed (except for minor things over the Decades of computing).