Is there really only two choices for a serious project? Either SQL Server or Oracle? MySQL/MariaDB -->Outdated PostgreSQL --> The engine is somewhat okay, but the tools for it not.
Why would being outdated matter if it can still do your typical crud app? What "serious projects" do you do?
Luke Jackson
>SQL Server or Oracle >MSSQL have fun paying truckloads of license and support fees when there are perfectly viable (and often superior) FOSS alternatives
ps. relational databases aren't the end all be all, check out Cassandra and Redis too
Jordan Sullivan
I meant serious as the data size can grow more quickly, so you actually need to worry about partitioning and archiving. Also, setting up replication and more advanced backup solutions.
Juan Cooper
did you know that you can download and use MSSQL for free unless on an enterprise environment?
Henry Howard
I just started learning this, would you experts please rate and provide critiques to improve my learning this?
Angel Sanchez
PostgreSQL, because no vendor cares about the SQL standard, but at least PostgreSQL devs aren't total assholes, unlike any other vendor.
Leo Allen
Development version has everything the Enterprise has. So If you are willing to use an unlicensed version, you don't have to pay anything. (Dev should not be used under production, only in development, but nobody can check it reliably). Also, I though people usually use KeyValue and Document stores alongside relational if the data needs it.
Joseph Hernandez
yeah, right until Microsoft orders an audit on your MSSQL usage (which they already know due to telemetry anyway), decides that your 2 man startup qualifies as enterprise and sticks a massive fine in your face
Cameron Hughes
>what are personal projetcs
Samuel Stewart
for me, it's Amazon RDS
Thomas Peterson
>Also, I though people usually use KeyValue and Document stores alongside relational if the data needs it. sure, but in that case the Relational DB is usually intended for offline data storage, most of the heavy online work is done in the NoSQL DB
Benjamin Gonzalez
>needing a fancy RDBMS for personal projects deploy a MySQL node and you're good
Justin Taylor
postgres is the only good database
oracle promotes bad practices and is expensive as shit. their support is fucking terrible sql server is expensive and lolms mysql is shit, drops stuff at random and fuck oracle mariadb i don't know, but if mysql is anything to go by, those hacks can't be trusted
if you disagree, you don't have enough database experience
Michael Flores
>needing a multi-user, concurrent RDBMS for personal projects SQLite ought to be be enough for anyone
Gavin Ramirez
What about the development, management and monitoring tools? pgAdmin can't even compare to SMSS or Oracle's
Gavin Fisher
If you think about performance, robustness, security, scalability and accessibility Oracle is awesome and Franky unbeatable.
>Inb4 bbut expensive to purchase and maintain. Yes, but Oracle also provides continued support through updates and security patches
Jordan Brown
what the fuck do you want to do? the new versions of postgres have schedulers (job scheduling), before you had to set things on cron, but even then you can just email reports or make your own reporting scripts in python etc (you know how to code, right?)
there's other stuff like pgbadger etc. and worst case, you can just query the activity views to see what's happening. it's not like oracle, that makes things purposefully obtuse in terms of monitoring, in order to get you to pay for their monitoring tool
Ryder Bennett
>using vendor-specific development, management and monitoring tools why do you insist on fucking yourself over?
Nolan Barnes
yeah because postgres doesn't have updates or patches
the only thing oracle excels in is having a shiton of bloated features to try to justify it, as well as trying to get retarded developers to use extra features that will force you to buy separate options and pay oracle even more
Isaac Hall
Not just vendor specific, it is hard to find anything for PostgreSQL really.
Jeremiah Long
My current system runs MySQL and insertss 65 million rows a day, during a 6-7 hour period. The main table is 35-40 columns for a manufacturing inventory system. It doesn't even break a sweat on a shitty blade server from 2007. What can you possibly not do on these rdbms's for your hobby projects
Chase Young
>ps. relational databases aren't the end all be all, check out Cassandra and Redis too
And yet, for relational things where you have to do the slightest amount of analysis on your data, Cassandra and Redis are fucking garbage. It's almost like they're not meant for the same thing, like you're saying "apples aren't the be all and end all, have you checked out asparagus or sliced cheese?"
Which of these things are MySQL (specifically newer versions of it) or Postgres unable to do? How much data are you really talking about? What's your actual experience using any of these databases?
Personally, I like MySQL's syntax, but the part that constantly kills me is how subqueries and views have less-than-good indexing (especially in older versions). There are a bunch of different things you can try doing that would work in better databases that slow to a crawl in MySQL.
I don't have as much experience with Postgres, but for the amount of time I was using Postgres, it didn't seem to have those same problems. I also really like some of Postgres's jsonb stuff, which makes it an interesting option for having both a more traditional relational database, and as an unstructured data junk drawer for future analysis, all in one place.
If I was starting something new, right now, I'd probably go with Postgres. If I wanted to just screw around with some new stuff and didn't really think the project was going anywhere, I'd probably test out VoltDB.
Brody Torres
SQLite is fucking great and easy, but it should be only for small to medium projects
Landon Lewis
postgres can definitely do replication and partitioning. so can oracle
Ian Nguyen
And only if your project is read heavy. If you need to insert and update a tons of stuff you are fucked with SQLite.
Justin Myers
There is practically no difference between postgres, mysql, mssql, and Oracle sql
Prove me wrong
Adam Rogers
eh - my last project did a lot of CRUDing, it works fine. No issues with writing or updating. The only thing I don't like is you can add a column to an existing table, you have to completely re-do the table.
Samuel Gutierrez
>And yet, for relational things where you have to do the slightest amount of analysis on your data, Cassandra and Redis are fucking garbage. It's almost like they're not meant for the same thing, OP is likely not doing any business analysis, machine learning or scientific research in his personal projects
>like you're saying "apples aren't the be all and end all, have you checked out asparagus or sliced cheese?" those are all foods intended for eating so your epic reddit analogy fails here
Bentley Nguyen
fuck
can't*
Aiden Gutierrez
MariaDB, just ask for Monty's special tools which makes it rape everything else and was the reason SUN and later Oracle paid a ridiculous premium for MySQL... except the tools. Compare it to a full auto conversion of an AR-15.
Eli Hall
literally the best db for 90% of all projects that require a db
Angel Price
My experience is mild in DBs, but right now I need to choose one for a project that will: - version the data changes - will store big trees - will need to store some json besides relational data - will have to setup an appropriate backup solution, though about replicating the database - starting data is around 100GB
I used MySQL, PostgreSQL and SQL Server before, but I am not a DBA or a sysadmin, so I would feel safe with SQL Server.
They're all foods, but they're not all apples, in the same way that relational databases are a type of data tool, but Cassandra and Redis are data tools that aren't relational databases. The analogy is correct.
Saying that OP doesn't have any need for a relational database and suggesting something else, when he's specifically asking for advice about relational databases just as retarded as if OP had come in asking for good apples for baking an apple pie, and suggesting he make that apple pie filling out of cheese slices.
Lucas Bailey
MySQL/MariaDB + Dell/Quest Toad (or MySQL Workbench if you're a hoe) is a pretty productive combo.
SQL Server is nice too.
You wanna stay away from Oracle tho. Its good for huge af DBs, but man is it crappy at everything else.
Andrew Cox
>lowercase SQL keywords this is wrong. Its time to stop. It looks like Fortran or Pascal (which I both love but still)
Ryan Adams
By definition, it is impossible to satisfy all three conditions. Those areas where it is important would fall in that 10%.
Do a test crash on your single node couchdb server with a bunch of inserts going on. Than do the same with any RDBMS.
Hunter Flores
if you haven't memorized all oracle error codes yet you should just go with mysql or postgres
Nicholas Butler
I know but this is just me playing around as a prototype. When the function gets more serious I easily: visual mode ~ (tilda) done, basiaclly lowercase distinguishes code that I'm still doing a lot of work on, after it gets a little more stable I uppercase it easily with that.
Hunter Jenkins
oh I see, pretty nice! saves your pinky
Eli Hall
I had a earlier version of the function and when I thought it was good enough to call finished so I uppercased it, but then later I learned more about how plpgsql works so I started rewriting the function and lowercased it as I rewrote to easily make the distinction between what Im still working on. eventually as I learned more the entire function ended up being rewritten.
Cooper Harris
>he doesn't name his element id's and name's the same as his table column names
Thomas Bennett
I'm working with a ms sql server database, and they expect me to understand how it's laid out without any documentation.
There are 180 tables and i've managed to narrow it down to 10, but they are not related in any way.
what would an expert user do? >inb4 kys
Nathan Myers
kys
Robert James
Thats a good "version" system haha
Daniel Barnes
Not sure what you mean.
Gabriel Young
hehe
n00b
Liam Williams
MariaDB
Andrew Morales
mysql/sqlite for basic stuff, mssql for olap
Henry Hernandez
Any other improvements I could learn about?
Josiah Myers
I'm such a brainlet I still don't know how to pivot a table
Brandon Hill
I only have one personal project that needs a DB. I used Postgre; it worked fine but >the tools for it not [are not okay] pretty much that, yes. At least the official ones. I looked at Postico but didn't want to pay for it so I just used the CLI.
For work (remote freelance), I've used MSSQL. It was very nice to work with and Studio was fantastic, but I would be very reluctant to use it myself due to the need for Windows Server instances.
Of course, whenever the scale is small enough, I go straight to SQLite.
Isaiah Jones
What about HP's vertica?
Oliver Robinson
(Me) >I only have one personal project that needs a DB. Slight correction: Only one that needs a full client/server DB system. I have quite a few projects that use SQLite, and it always justwerks.
Julian Robinson
Almost nothing that Sup Forums does (and most businesses for that matter) requires anything more complicated than MariaDB. SQLite would also be an appropriate solution for many. "Web-scale", NoSQL solutions are applicable if you are Google or Facebook, but not to you.
Jackson Garcia
asking this too
Brody Stewart
Note that you actually can add a new column, if you're okay with it being added to the end instead of being able to choose its placement. I often do that when I add a feature and then go back and do it properly when I'm happy.
Joseph Walker
For anything where you don't want to pay money, Postgres
For anything where you actually need enterprise support and decent tooling, SQL Server (especially now that it's going to run on Linux)
Adam Powell
SQLite while I'm prototyping, Postgres if it turns into anything serious
Logan Gray
i don't know but when I see lots of SQL keywords i starts to look like COBOL.