What database is learning from scratch in 2010?

If someone knew little about databases and wanted to learn about them from scratch, which database would you recommend studying with and why?

MySQL seems ubiquitous, but are there any other, more modern ones that have learned from the past, or others that are easier or more logical to work with?

Universal compatibility / libraries are not a big concern unless this is something really obscure. Mac compatibility (Unix) is required.

+4
source share
12 answers

If you just want to learn the SQL language and not administer the database, I would recommend working with SQLite . If you are on a Mac, it should already be installed. This is a much simpler system than most RDBMS; there is no server to configure, and the client to connect to the server. There are no directories in cryptographic files or anything like that. To get started, you can simply enter:

sqlite3 mydatabase.db 

And start working with him. It is much easier and easier to configure and use than other database systems, which I consider to be a good choice for beginners.

SQLite is now a fairly small and light language. If you need to deal with any really complex queries and data mining, I would recommend PostgreSQL . It has a fairly advanced query optimizer and a fairly long list of SQL functions.

And if you want to study the database as something that needs to be used for internal storage for web programming or something like that, MySQL is what I would choose. This is ubiquitous, supported by almost any web host, and is pretty fast for very simple requests and updates, which is usually necessary for a web system. It has some real errors that should be avoided when setting up; you need to choose between several different storage systems, and this can take a lot of work to convince it to actually work with Unicode data. But it’s good to learn mainly from your ubiquity.

+17
source

From what I saw (at least on the Internet), MySQL and PostgreSQL are the most common free database systems. If you plan to study one of them, check out this comparison .

You can also consider learning SQLite , the "stand-alone, embedded, zero-configuration SQL database." It is very easy to get up and leave, stored in one file and, as the description says, does not have a complex configuration. SQLite has proven extremely popular as a persistent data warehouse for local desktop / iPhone applications. If you follow this route on a Mac / iPhone, you can also check Basic Data , which is an abstraction layer of Apple developed on top of SQLite (but can work with almost any database) to simplify working with the database. As a bonus, Core Data contains a beautiful graphical interface for building relationships and entities. You can check out this tutorial for more information.

+5
source

The sad thing about databases is that each of them works bit differently. Most likely, I would choose MySQL and play a little with it. Then get PostgreSQL and do the same.

If you need to use databases in a corporate environment, then I would set myself the task of checking also Oracle and SQL Server, which have express versions that can be installed for free for you.

http://www.microsoft.com/express/sql/download/ http://www.oracle.com/technology/software/products/database/index.html

In the beginning, all databases are more or less confusing, but I would choose MySQL as the first, because it can perform most basic functions and has great help available.

+3
source

If you really, really want to “learn from scratch,” then theory is the first thing to learn. And this means: NOT products, not any. Not DB2, not MySQL, not the oracle, not any of them.

Hugh Darwen has a freely available e-book called Introduction to Relational Database Theory. The material is completely “accessible” and not at all like most other textbooks on theory. It is also an accompanying textbook for his university course in database technology.

There are several books in Chris Date, of which Introduction to Database Systems is the most comprehensive and standard textbook in the field, but perhaps a bit abstract for some.

If you think that all you need is to “just know the product” and that you can do equally well “without any of this theory”, then in this case, please do not pay this answer because the wording of your question is dishonest .

+3
source

I would go with mysql. It is easy to configure, easy to manage with the mysql client, and it is well documented. If you are just starting out, you probably will not need most of the functions offered by other databases, such as stored procedures, etc.

+2
source

First of all, MySQL is ubiquitous and modern.

ANSI SQL is more or less the same in all RDBMs, so you can learn any of them and you will be fine.

Once you have mastered ANSI SQL, all you have left is localized solutions for each of them that will not be transferred to other systems - and therefore it is completely not recommended to use them if they do not simplify your tasks that justify it.

+2
source

MySQL, PostgreSQL, SQLite - choose one. PostgreSQL is more like Oracle, and, in my opinion, a little more mature. He kept procedures, triggers and referential integrity longer than MySQL. I admit that I have both installed, but I use MySQL more often because it is quick and easy.

But keep in mind that non-SQL alternatives exist and are growing in importance. BigTable , object databases such as db4o , deserve attention. "No SQL . "

+1
source

If you just get your feet wet, MYSQL is a great place to start. Easy installation on any platform, excellent community support and many free tools for work (SQLYog is my favorite).

I agree that theory is very important. Depending on how you learn best, digging and remaking may be what needs to be done before trying to absorb 40 years of thinking in relational systems.

Codd and Date are legends in this area and may help you understand the wider points of relational theory, but they are difficult to grasp before you have context for this topic.

If you are looking for a more pragmatic / immediate guide, I would suggest a book like "Databases for mere mortals" and all that is written by Joe Selco.

Once you have mastered the basics, there are many other learning platforms. As mentioned above, SQLLite and PostGres are two more great options for Mac OS.

+1
source

If you want to learn SQL: the best way is to choose a database that implements more features of the SQL standard. So I would recommend Firebird or PostgreSQL

+1
source

I could be a little "distracted" with this answer, but I think we are in the same situation!

Check out the Manga Database Configuration Guide ! I have not read it myself yet, but it is on the way to the post office when we talk! I heard good things about this from friends and colleges, and he also received good reviews. Although this is a bit “controversial,” it should be a fun and surprisingly in-depth introduction to fundamental methods and principles!

+1
source

Alex wrote: "Reading a textbook without gradually testing your knowledge in a real database will not bring good results for most people."

My book and my university course use Dave Vooorhis Rel for this purpose.

Hugh

0
source

All Articles