SQL, and Ye Shall Find

  • Comments posted to this topic are about the item SQL, and Ye Shall Find

    Best wishes,
    Phil Factor

  • The overriding concern for any IT project is staffing--finding and hiring the right people. Running PostgreSQL on Linux, great idea, if you have the needed expertise at hand. By comparison, Windows geeks grow on trees.

  • I wonder sometimes if SQL Server needs a reboot. In a lot of places its Sybase roots are still showing (e.g. CONVERT, DECIMAL/NUMERIC, UPDATE...JOIN, @@, etc.). The need to maintain backward compatibility makes T-SQL awkward in places and it would be nice to have a clean break and only take the ANSI-standard features forward. Some of the newer ANSI-features actually have real issues (e.g. MERGE) but I wonder if some of the precarious positions the dev and testing teams are put into when trying to implement new features or fix complex bug is brought on by a lot of the legacy code still in play. I am sure some of the weight of adding new features is regression testing areas that would be better off buried behind the proverbial shed.

    There are no special teachers of virtue, because virtue is taught by the whole community.
    --Plato

  • GeorgeCopeland (2/6/2016)


    The overriding concern for any IT project is staffing--finding and hiring the right people. Running PostgreSQL on Linux, great idea, if you have the needed expertise at hand. By comparison, Windows geeks grow on trees.

    Well, that generally applies to why MySQL is being used. People have a lot of experience using it regardless of what else is out there that's a lot better. I don't think that's a bad thing. It's like arguing what is a better language, Java or C++? I'm sure you could ultimately come to a decision that is widely adapted, but at the end of the day, it doesn't really matter. The choice between using Java or C++, much like MySQL vs SQL Server, may just come down to the team and what they are experienced in using. So, who cares as long as the business is moving forward?

    I see these types of arguments and discussions all the time, especially with the whole Python versus R one. I really don't get it. They are both good and they are both tools. Why are people spending all this time arguing between either one like it matters to me who only knows Python? Yes, I could learn R, but my manager is letting me do it in Python. I'm driving the business forward using Python. I can pick up R when it really starts to make sense.

    MySQL is no different in my eyes. I grew up on MySQL because I grew up on Unix/Linux. It's what helped me complete my projects because it was simple, free and worked well with Linux. There is always better, but as above, who cares. It worked and that's what we wanted to do. Most of us are not Google where MySQL may have failed us to the point where we created our own thing internally. 😀

  • SQL Server certainly has some quirks, but what mature database platform doesn't have them? Having worked in Oracle for years and then SQL Server for years, I have to say I prefer SQL Server. Then again, comparing them is like comparing apples and oranges. Sure, they're both members of the same family of software, but they're very different products. They just work differently.

    With the advent of the many different relational database platforms out there, I think SQL Server and Oracle are still the major players. The reason is that they're very good at what they do. The inconsistencies that Phil pointed out in key areas make me hesitate. While flexibility is good, so is consistency and reliability. Any product that tries to be all things to all people isn't going to be the best at anything.

    The family of document databases is growing, as are the free, open source databases. I honestly don't know enough about them to say which one's the best at what they do. I don't even know enough about them to discuss the quirks, if they have any yet. I'm guessing that as they grow up, they'll have quirks, just like any mature platform.

  • Oracle, SQL Server and DB2 are by far the marketshare leaders. However, they are all quite expensive which leads to the MySQL, NoSQL and others to take a small bite out of the market. in 2012 when Microsoft came out with SQL 2012 and changed their licensing model to charge by core instead of CPU the price of it went up quite a bit. This is opening the door to the free or low cost ones to take a bigger bite out of the RDBMS market.

  • The frustration for me is that people start wailing that an RDBMS does not do web scale with very little idea of what that actually means in their context.

    Then there is the moaning about the limitations and constraints that an RDBMS places on them. For these people MI is something that happens automatically and data quality is something that can be tacked on afterwards.

    We can give total freedom to store data in whatever format suits an application but only if we accept that this is paid for with compound interest by downstream applications and may ironically limit what can be achieved with the data.

    At some point you have to pay for what you want whether you pay in money, time, effort or options open to you.

  • There has been explosion in the number of relational SQL databases developed over the past 20 years. The broad sentiment that RDMS don't scale is due to the unfortunate fact that a glut of these databases were developed by people who simply don't know how to properly develope relational databases or write SQL code in the first place.

    "Do not seek to follow in the footsteps of the wise. Instead, seek what they sought." - Matsuo Basho

  • I have expertise in management fads. It does not surprise me that management fads extend into technical areas. I advise all technologists to analyze all fads to find the nugget of truth. If you do, it will serve your desire to deliver good solutions. Finding the nugget of truth will serve technology, it will serve clients, and it will serve Reality, however you define that. Truth is truth. I tire of people who fear the truth stick.

  • Eric M Russell (2/8/2016)


    There has been explosion in the number of relational SQL databases developed over the past 20 years. The broad sentiment that RDMS don't scale is due to the unfortunate fact that a glut of these databases were developed by people who simply don't know how to properly develope relational databases or write SQL code in the first place.

    I'm working with a few of those systems at the moment, and it's *very* frustrating. I would blame the over-use of dodgy ORMs, but some of these systems have been around for rather longer!

    Thomas Rushton
    blog: https://thelonedba.wordpress.com

  • To my mind, MySQL can't in any way be called "Relational".

    The standard "engine" doesn't support DRI (at least didn't last time I looked). The argument I have heard put forward is "It Uses SQL ... DUH!". Big whoopsy, so does IDMS COBOL from R12. And Excel. Rel, however, doesn't - it's D based. Still, at least it supports stored procs now.

    It's not a replacement or like for like for a RDBMS, it's a simple filestore database and an effective replacement for xBase. It's great for what it is and is originally designed to do. It's fine if your data "doesn't matter" and your fully normalised schema would be 12 tables (and almost certainly isn't) for running a near static LAMP website for Mom 'n' Pop's Corner Shop that can be lashed together in 2 days and costs a tenner a year to run. For that - it's brilliant.

    But if you need effective data integrity. Or a sane backup method. Or online backups ... congratulations and welcome to Orable Enterprice Licencing, isn't it?

    I'm a DBA.
    I'm not paid to solve problems. I'm paid to prevent them.

  • lol I will implement that website using an Excel workbook as database. For a tenner. In cash.

  • ThomasRushton (2/9/2016)


    Eric M Russell (2/8/2016)


    There has been explosion in the number of relational SQL databases developed over the past 20 years. The broad sentiment that RDMS don't scale is due to the unfortunate fact that a glut of these databases were developed by people who simply don't know how to properly develope relational databases or write SQL code in the first place.

    I'm working with a few of those systems at the moment, and it's *very* frustrating. I would blame the over-use of dodgy ORMs, but some of these systems have been around for rather longer!

    Yeah, it's funny how we'll occasionally see a blog post written by some junior app developer stating that LINQ will someday replace SQL because it's so much easier to work with. That's wrong on so many levels.

    "Do not seek to follow in the footsteps of the wise. Instead, seek what they sought." - Matsuo Basho

Viewing 13 posts - 1 through 12 (of 12 total)

You must be logged in to reply to this topic. Login to reply