Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Which RDBMS?

Which RDBMS?

Scheduled Pinned Locked Moved The Lounge
designcssdatabasemysqlsql-server
59 Posts 19 Posters 3 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J jschell

    jochance wrote:

    When you look for things, look for ANSI SQL.

    Been doing DB for 40 years and that never came up. First of course the goal is the enterprise solution and not the nuts and bolts. Architecture and design matter far more. Most SQL is rather easy an mundane. And ANSI SQL works for that. But more complex problems cannot be done at all in ANSI SQL. So attempting to limit oneself to that means ignoring features of the database that have been optimized over years or even decades to provide features like that. Versus silly things like attempt to figure out how to do it in a programming language rather than using the database itself. Not to mention of course the real costs associated with licensing, maintenance and even the real cost of using existing knowledge of a technology versus attempting a new one. So even if you can find a database that is not compliant, especially for most of the major parts, the consideration is just not worth the time.

    H Offline
    H Offline
    honey the codewitch
    wrote on last edited by
    #26

    For my part, as long as the database supports SQL92 as a baseline I'm willing to learn some of the DB specific features I need to be effective with it. I just intend to lean heavily on common SQL that works across DBs where I can.

    Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

    J 1 Reply Last reply
    0
    • J jschell

      Kent Sharkey wrote:

      MariaDB is created by the original creator of MySQL, so it's pretty much (older versions anyway) a drop-in replacement.

      As I understand it that description is not correct. When MySQL was bought by Oracle it was open source. At point in time a branch was taken of MySQL and then given the name MariaDB. The open source nature of development has continued on that branch. Following provides information on contributors to MariaDB SHOW CONTRIBUTORS - MariaDB Knowledge Base[^] I do know of Percona in that list and I can say that they have done, to my mind, extensive work improving both the open source version and there own variation which they sell/license. And specifically in terms of performance. Following is release history and it seems pretty active to me MariaDB Server - All releases - MariaDB.org[^] Conversely the release history for MySQL is much more sparse. There has been speculation that the focus of Oracle is not on MySQL and certainly not on the free version (they have a paid one). One might suppose quite reasonably that that is because Oracle wants either their paid version used or even Oracle database used instead. MariaDB Server - All releases - MariaDB.org[^]

      K Offline
      K Offline
      Kent Sharkey
      wrote on last edited by
      #27

      From MariaDB versus MySQL - Compatibility - MariaDB Knowledge Base[^]

      Quote:

      Until MariaDB 5.5, MariaDB versions functioned as a "drop-in replacement" for the equivalent MySQL version, with some limitations. From MariaDB 10.0, it is usually still very easy to upgrade from MySQL.

      But I agree that MariaDB has been much better supported that MySQL.

      TTFN - Kent

      1 Reply Last reply
      0
      • H honey the codewitch

        I don't really want to add another paid service to my list of worries, as anything that costs me money is just more potential source for anxiety - like for example, when my bank card's fraud protection kicks in and cancels my card even though it shouldn't have, and then all my autopays need to be redone. So like, I keep it minimal. I'm more concerned about operations than programming, so otherwise a cloud solution would be ideal, but maybe I'll check to see if my existing VPS provider offers it. Adding extra cost to an existing bill is something i'm much more inclined to do vs adding another bill.

        Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

        R Offline
        R Offline
        RickZeeland
        wrote on last edited by
        #28

        I once tried the free Postgres hosting option of Heroku, but could not get it working sadly, it all seemed geared towards their "app ecosystem" which I was not interested in. Anyway they stopped offering the free option, so it's best to look elsewhere. Maybe one of these: Top 9 free online databases[^]

        1 Reply Last reply
        0
        • J jschell

          jochance wrote:

          When you look for things, look for ANSI SQL.

          Been doing DB for 40 years and that never came up. First of course the goal is the enterprise solution and not the nuts and bolts. Architecture and design matter far more. Most SQL is rather easy an mundane. And ANSI SQL works for that. But more complex problems cannot be done at all in ANSI SQL. So attempting to limit oneself to that means ignoring features of the database that have been optimized over years or even decades to provide features like that. Versus silly things like attempt to figure out how to do it in a programming language rather than using the database itself. Not to mention of course the real costs associated with licensing, maintenance and even the real cost of using existing knowledge of a technology versus attempting a new one. So even if you can find a database that is not compliant, especially for most of the major parts, the consideration is just not worth the time.

          J Offline
          J Offline
          jochance
          wrote on last edited by
          #29

          It's the portability aspect. Things went many directions at once. Value outpaced usefulness.

          1 Reply Last reply
          0
          • H honey the codewitch

            I wrote a SQL92 parser once so I'm pretty familiar with it except I often mix T-SQL in with SQL92 because the lines always blur for me.

            Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

            J Offline
            J Offline
            jochance
            wrote on last edited by
            #30

            One is inside the other, SQL92 has T-SQL in it.

            H 1 Reply Last reply
            0
            • J jochance

              One is inside the other, SQL92 has T-SQL in it.

              H Offline
              H Offline
              honey the codewitch
              wrote on last edited by
              #31

              I'd say T-SQL has SQL92 in it since T-SQL is essentially a superset, but I know what you mean.

              Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

              J 1 Reply Last reply
              0
              • H honey the codewitch

                I'd say T-SQL has SQL92 in it since T-SQL is essentially a superset, but I know what you mean.

                Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

                J Offline
                J Offline
                jochance
                wrote on last edited by
                #32

                Fair point, it cuts both ways. Would you call one or the other a superset in relation?

                H 1 Reply Last reply
                0
                • J jochance

                  Fair point, it cuts both ways. Would you call one or the other a superset in relation?

                  H Offline
                  H Offline
                  honey the codewitch
                  wrote on last edited by
                  #33

                  T-SQL is roughly a superset of SQL92

                  Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

                  J 1 Reply Last reply
                  0
                  • H honey the codewitch

                    T-SQL is roughly a superset of SQL92

                    Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

                    J Offline
                    J Offline
                    jochance
                    wrote on last edited by
                    #34

                    Yeah that makes sense. I think in my head I lump T-SQL and PL/SQL together as DDL/DML.

                    1 Reply Last reply
                    0
                    • H honey the codewitch

                      I come from a Microsoft background. I'm pretty good at managing SQL Server databases, making them parallel and fast, and I know T-SQL quite well. To a lesser degree I know SQL92 but I sometimes get T-SQL mixed into it. I'm trying to decide what RDBMS to run on my Debian VPS. Obviously it's not going to be SQL Server. I expect light traffic. I'm wondering if Postgre might be the best option (most familiar) for me? Or if it would be overkill as I only really need simple stuff for the most part. I don't think I'll need triggers or jobs, for example. Maybe I'd also be taking on too much management. I'd prefer it be something i can set up and forget about more or less. Mysql is another option and might be worth learning because it's so ubiquitous, but my main concern with it is overhead in terms of learning curve. My biggest priority is to reduce that curve. I don't want to spend time learning about a different RDBMS way of doing things wherever I can avoid it. I just don't want to invest the time. I'm not sure which one would be a good fit for my use cases, which are still open ended at this point, except light traffic and simple, smallish datasets. Like I said, by biggest priority is a flattish learning curve, so the closer I can get to MS SQL Server "feel" the happier I'll be. In the alternative, an RDBMS that's fairly automatic with few user facing moving parts outside of SQL/DDL/DML would be okay. I'm not sold on those two offerings either. If someone has a better idea, I'm all for trying it.

                      Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

                      Y Offline
                      Y Offline
                      YahiaEQ
                      wrote on last edited by
                      #35

                      If you want an easy setup for Postgresql you can try this: https://pigsty.io/

                      1 Reply Last reply
                      0
                      • J jschell

                        Kent Sharkey wrote:

                        MariaDB is created by the original creator of MySQL, so it's pretty much (older versions anyway) a drop-in replacement.

                        As I understand it that description is not correct. When MySQL was bought by Oracle it was open source. At point in time a branch was taken of MySQL and then given the name MariaDB. The open source nature of development has continued on that branch. Following provides information on contributors to MariaDB SHOW CONTRIBUTORS - MariaDB Knowledge Base[^] I do know of Percona in that list and I can say that they have done, to my mind, extensive work improving both the open source version and there own variation which they sell/license. And specifically in terms of performance. Following is release history and it seems pretty active to me MariaDB Server - All releases - MariaDB.org[^] Conversely the release history for MySQL is much more sparse. There has been speculation that the focus of Oracle is not on MySQL and certainly not on the free version (they have a paid one). One might suppose quite reasonably that that is because Oracle wants either their paid version used or even Oracle database used instead. MariaDB Server - All releases - MariaDB.org[^]

                        S Offline
                        S Offline
                        seismofish
                        wrote on last edited by
                        #36

                        Interesting bit of trivia: Michael Widenius named MariaDB after his daughter, Maria. He had previously named MySQL after his son, My, and MaxDB after his son, Max. Michael Widenius - Wikipedia[^] I would personally recommend MariaDB over MySQL these days; I'm not a fan of the way Oracle have been handling MySQL. PostGreSQL is also an excellent choice of RDBMS for Linux platforms. <°}}}><

                        M 1 Reply Last reply
                        0
                        • H honey the codewitch

                          I come from a Microsoft background. I'm pretty good at managing SQL Server databases, making them parallel and fast, and I know T-SQL quite well. To a lesser degree I know SQL92 but I sometimes get T-SQL mixed into it. I'm trying to decide what RDBMS to run on my Debian VPS. Obviously it's not going to be SQL Server. I expect light traffic. I'm wondering if Postgre might be the best option (most familiar) for me? Or if it would be overkill as I only really need simple stuff for the most part. I don't think I'll need triggers or jobs, for example. Maybe I'd also be taking on too much management. I'd prefer it be something i can set up and forget about more or less. Mysql is another option and might be worth learning because it's so ubiquitous, but my main concern with it is overhead in terms of learning curve. My biggest priority is to reduce that curve. I don't want to spend time learning about a different RDBMS way of doing things wherever I can avoid it. I just don't want to invest the time. I'm not sure which one would be a good fit for my use cases, which are still open ended at this point, except light traffic and simple, smallish datasets. Like I said, by biggest priority is a flattish learning curve, so the closer I can get to MS SQL Server "feel" the happier I'll be. In the alternative, an RDBMS that's fairly automatic with few user facing moving parts outside of SQL/DDL/DML would be okay. I'm not sold on those two offerings either. If someone has a better idea, I'm all for trying it.

                          Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

                          P Offline
                          P Offline
                          Peter Adam
                          wrote on last edited by
                          #37

                          [Firebird](http://firebirdsql.org/). It is easy to go from embedded to a full RDBMS. [FirebirdFAQ.org - up-to-date answers to Firebird related questions](http://www.firebirdfaq.org/)

                          1 Reply Last reply
                          0
                          • H honey the codewitch

                            I come from a Microsoft background. I'm pretty good at managing SQL Server databases, making them parallel and fast, and I know T-SQL quite well. To a lesser degree I know SQL92 but I sometimes get T-SQL mixed into it. I'm trying to decide what RDBMS to run on my Debian VPS. Obviously it's not going to be SQL Server. I expect light traffic. I'm wondering if Postgre might be the best option (most familiar) for me? Or if it would be overkill as I only really need simple stuff for the most part. I don't think I'll need triggers or jobs, for example. Maybe I'd also be taking on too much management. I'd prefer it be something i can set up and forget about more or less. Mysql is another option and might be worth learning because it's so ubiquitous, but my main concern with it is overhead in terms of learning curve. My biggest priority is to reduce that curve. I don't want to spend time learning about a different RDBMS way of doing things wherever I can avoid it. I just don't want to invest the time. I'm not sure which one would be a good fit for my use cases, which are still open ended at this point, except light traffic and simple, smallish datasets. Like I said, by biggest priority is a flattish learning curve, so the closer I can get to MS SQL Server "feel" the happier I'll be. In the alternative, an RDBMS that's fairly automatic with few user facing moving parts outside of SQL/DDL/DML would be okay. I'm not sold on those two offerings either. If someone has a better idea, I'm all for trying it.

                            Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

                            T Offline
                            T Offline
                            TheBugman
                            wrote on last edited by
                            #38

                            From what I know, MSSQL exists for Linux also. growing up with Multics, learning UNIX and then Linux for over 25 years, I abandoned that platform completely for Microsoft when I found that my peers had used Microsoft products and they were able to upgrade their solutions as time passed. I had to fight every time with Unix/Linux changes. After 15 years on the Microsoft path I have never looked back and I am going on 40 years of developing software and I can maintain and upgrade applications from even 20 years ago. Having software out there bringing you rent, the better off you are and the more time you have to develop. That learning curve is bad enough with new technology alone, so I advise you to stick with your tools. I wish you luck!

                            1 Reply Last reply
                            0
                            • S seismofish

                              Interesting bit of trivia: Michael Widenius named MariaDB after his daughter, Maria. He had previously named MySQL after his son, My, and MaxDB after his son, Max. Michael Widenius - Wikipedia[^] I would personally recommend MariaDB over MySQL these days; I'm not a fan of the way Oracle have been handling MySQL. PostGreSQL is also an excellent choice of RDBMS for Linux platforms. <°}}}><

                              M Offline
                              M Offline
                              MarkTJohnson
                              wrote on last edited by
                              #39

                              This is my son My?

                              I’ve given up trying to be calm. However, I am open to feeling slightly less agitated. I’m begging you for the benefit of everyone, don’t be STUPID.

                              T S 2 Replies Last reply
                              0
                              • H honey the codewitch

                                I come from a Microsoft background. I'm pretty good at managing SQL Server databases, making them parallel and fast, and I know T-SQL quite well. To a lesser degree I know SQL92 but I sometimes get T-SQL mixed into it. I'm trying to decide what RDBMS to run on my Debian VPS. Obviously it's not going to be SQL Server. I expect light traffic. I'm wondering if Postgre might be the best option (most familiar) for me? Or if it would be overkill as I only really need simple stuff for the most part. I don't think I'll need triggers or jobs, for example. Maybe I'd also be taking on too much management. I'd prefer it be something i can set up and forget about more or less. Mysql is another option and might be worth learning because it's so ubiquitous, but my main concern with it is overhead in terms of learning curve. My biggest priority is to reduce that curve. I don't want to spend time learning about a different RDBMS way of doing things wherever I can avoid it. I just don't want to invest the time. I'm not sure which one would be a good fit for my use cases, which are still open ended at this point, except light traffic and simple, smallish datasets. Like I said, by biggest priority is a flattish learning curve, so the closer I can get to MS SQL Server "feel" the happier I'll be. In the alternative, an RDBMS that's fairly automatic with few user facing moving parts outside of SQL/DDL/DML would be okay. I'm not sold on those two offerings either. If someone has a better idea, I'm all for trying it.

                                Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

                                B Offline
                                B Offline
                                Bruce Patin
                                wrote on last edited by
                                #40

                                I have administered a system for 9 years based on PostgreSQL, another system for 17 years based on SQL Server, and maintain a private Linux system based on MySQL. Of all the systems mentioned in this thread, PostgreSQL is my favorite for three main reasons: 1. It is free, unless you want to pay for support. 2. It is object oriented. Writing procedures that work together is very pleasant in PostgreSQL. 3. It is pure, not beset with encumbering licenses from corporations wanting to take over the world. 4. I can and have fairly easily written my own extension for it. In my case, it was my own version of SOUNDEX. For SQL Server: 1. It is not free. 2. When I write a View2 that uses a View1, if View1 is ever updated, View2 does not see the update until I ALTER (with no changes needed) View2. 3. I use the Microsoft OPENQUERY a lot to do joins on remote databases before the data is received on my end. One problem with it is that it does not accept variables of any sort. 4. The interface is generally polished and familiar to me. My main irritation is the line numbering used on error messages that don't match my source without doing arithmetic. For MySQL: 1. It is free up to a point. 2. It has ubiquitous documentation. 3. It is maintained poorly by Oracle, with whom I have had unpleasant communications with an arrogant salesman. 4. It has been patched to use multiple engines in an attempt to get wanted features. I.e., it is a bit of a mess. 5. I think I would rather use MariaDB, but haven't had the opportunity.

                                P P 2 Replies Last reply
                                0
                                • M MarkTJohnson

                                  This is my son My?

                                  I’ve given up trying to be calm. However, I am open to feeling slightly less agitated. I’m begging you for the benefit of everyone, don’t be STUPID.

                                  T Offline
                                  T Offline
                                  trønderen
                                  wrote on last edited by
                                  #41

                                  That would be daughter My: Little My[^]. I think the photo of that actress has very little resemblance to Little My in the books. There is a lot more truthful rendering at Little My hook[^]. Or just google for 'Little My' images, and you'll have dozens to choose from. (In the books, the drawings were made with an ink pen, black line only. I never knew that My always wore a red dress - that is something added by the marketing people for all the spin-off effects, to make her more visible. As if she wasn't visible enough already :-) And ... I really hate some of those spin offs! Especially the comics and animations - they were made by people who never grasped the spirit of the Moomins at all! If you have read the original books - which is highly recommended - the comics and animations are like a completely different world, only with characters looking the same and named the same. It isn't Moomin Valley!)

                                  Religious freedom is the freedom to say that two plus two make five.

                                  1 Reply Last reply
                                  0
                                  • H honey the codewitch

                                    For my part, as long as the database supports SQL92 as a baseline I'm willing to learn some of the DB specific features I need to be effective with it. I just intend to lean heavily on common SQL that works across DBs where I can.

                                    Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

                                    J Offline
                                    J Offline
                                    jschell
                                    wrote on last edited by
                                    #42

                                    honey the codewitch wrote:

                                    as long as the database supports SQL92

                                    You would probably need to look really hard to find a SQL one that doesn't do that.

                                    H P 2 Replies Last reply
                                    0
                                    • J jschell

                                      honey the codewitch wrote:

                                      as long as the database supports SQL92

                                      You would probably need to look really hard to find a SQL one that doesn't do that.

                                      H Offline
                                      H Offline
                                      honey the codewitch
                                      wrote on last edited by
                                      #43

                                      Yeah, but I just wanted to be clear, and also eliminate the possibility of any half arsed implementations.

                                      Check out my IoT graphics library here: https://honeythecodewitch.com/gfx And my IoT UI/User Experience library here: https://honeythecodewitch.com/uix

                                      1 Reply Last reply
                                      0
                                      • B Bruce Patin

                                        I have administered a system for 9 years based on PostgreSQL, another system for 17 years based on SQL Server, and maintain a private Linux system based on MySQL. Of all the systems mentioned in this thread, PostgreSQL is my favorite for three main reasons: 1. It is free, unless you want to pay for support. 2. It is object oriented. Writing procedures that work together is very pleasant in PostgreSQL. 3. It is pure, not beset with encumbering licenses from corporations wanting to take over the world. 4. I can and have fairly easily written my own extension for it. In my case, it was my own version of SOUNDEX. For SQL Server: 1. It is not free. 2. When I write a View2 that uses a View1, if View1 is ever updated, View2 does not see the update until I ALTER (with no changes needed) View2. 3. I use the Microsoft OPENQUERY a lot to do joins on remote databases before the data is received on my end. One problem with it is that it does not accept variables of any sort. 4. The interface is generally polished and familiar to me. My main irritation is the line numbering used on error messages that don't match my source without doing arithmetic. For MySQL: 1. It is free up to a point. 2. It has ubiquitous documentation. 3. It is maintained poorly by Oracle, with whom I have had unpleasant communications with an arrogant salesman. 4. It has been patched to use multiple engines in an attempt to get wanted features. I.e., it is a bit of a mess. 5. I think I would rather use MariaDB, but haven't had the opportunity.

                                        P Offline
                                        P Offline
                                        Peter Adam
                                        wrote on last edited by
                                        #44

                                        Quote:

                                        When I write a View2 that uses a View1, if View1 is ever updated, View2 does not see the update until I ALTER (with no changes needed) View2.

                                        Do you mean if it is created without [schemabinding](https://learn.microsoft.com/en-us/sql/t-sql/statements/create-view-transact-sql?view=sql-server-ver16#schemabinding)? Postgresql was different, there it was the default. Oh the joys of cascade dropping and recreating views and functions ... (Firebird 1.5 is the same) Oracle is [wise](https://forums.oracle.com/ords/apexds/post/schema-bound-view-9059) . Creating views on views therefore considered a bad practice.

                                        B 1 Reply Last reply
                                        0
                                        • J jschell

                                          honey the codewitch wrote:

                                          as long as the database supports SQL92

                                          You would probably need to look really hard to find a SQL one that doesn't do that.

                                          P Offline
                                          P Offline
                                          PIEBALDconsult
                                          wrote on last edited by
                                          #45

                                          :cough: Cache :cough: (Not fully SQL92 compliant. Worst is lack of order-of-operations.)

                                          J 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups