+ 1
Is there an alternative to sql?
5 Réponses
+ 3
You can always write/read text files if it's a simple project with not too much traffic
0
Microsoft SQL Server has a free SQL Server Express Edition up to 10gb of data.
Oracle owns MySQL and that is free and has lots of history.
The MariaDB fork of MySQL from some of the original developers has its own features now and even more pluggable storage engines.
PostgreSQL is the most advanced open-source relational database with some great features like foreign data wrappers and interesting datatypes to go beyond simple tables.
MemSQL is a newer highly scalable and fast database with in-memory and disk-based columnstore tables with a completely free community edition.
There is SQLite that's a very fast, lightweight embedded relational database when you don't need a central server.
Firebird is another less-known free database that has a decent international community of users.
0
I certainly agree that SQL's syntax is difficult to work with, both from the standpoint of automatically generating it, and from the standpoint of parsing it, and it's not the style of language we would write today if we were designing SQL for the demands we place on it today. I don't think we'd find so many varied keywords if we designed the language today, I suspect join syntax would be different, functions like GROUP_CONCAT would have more regular syntax rather than sticking more keywords in the middle of the parentheses to control its behavior... create your own laundry list of inconsistencies and redundancies in SQL that you'd like/expect to see smoothed out if we redesigned the language today.
There aren't any alternatives to SQL for speaking to relational databases (i.e. SQL as a protocol), but there are many alternatives to writing SQL in your applications. These alternatives have been implemented in the form of frontends for working with relational databases. Some examples of a frontend include:
SchemeQL and CLSQL, which are probably the most flexible, owing to their Lisp heritage, but they also look like a lot more like SQL than other frontends.
LINQ (in .Net)
ScalaQL and ScalaQuery (in Scala)
SqlStatement, ActiveRecord and many others in Ruby,
HaskellDB
...the list goes on for many other languages.
I think that the underlying theme today is that rather than replace SQL with one new query language, we are instead creating language-specific frontends to hide the SQL in our regular every-day programming languages, and treating SQL as the protocol for talking to relational databases.
0
There are many SQL based dbms available, MySQL, Mariadb, Oracle SQL.
Moving ahead there are many No SQL databases too. Casandra, MongoDB, Redis etc