What is the easiest way to get started using databases with real data?
Charles,
You mentioned MS Excel in your comment so it's pretty much safe to assume you're in a Microsoft environment. You definitely have much power if you know how to mess with a database management system.
If you're doing some serious data analysis, I'd say go for enterprise databases like Oracle, SQL Server, MySQL, DB2, etc., which are Relational Databases. It's good to note that there are also non-relational databases out there that are gaining traction in the database market.
Since you're probably on a Microsoft environment, I suggest you go for SQL Server. You can ask your IT department if you have an enterprise database already in place. If none, you can download the "express" version of SQL Server (see link on the other comment). While you're there read about the limitation of an express edition. The express edition is FREE.
The express edition is a fully functioning, production-ready version of the SQL Server although it's limited in some ways (storage capacity, memory usage, etc). You can even run a Reporting Services off the express version. Look for "SQL Server Express with Advanced Services (contains the database engine, Express Tools, Reporting Services, and Full Text Search" --> download here: http://www.microsoft.com/sqlserver/en/us/editions/2012-editions/express.aspx
If you think that there is a necessity for an enterprise-wide database in your company (assuming your company doesn't have it yet), go ahead and buy the Developer version. The developer version contains everything that the Enterprise version of SQL Server has. If you are testing what SQL Server can do in an enterprise setting, this is the version you want to get your hands on.
Note that you cannot use the developer version for production. It's intended for testing only. The good thing is, when your company database is ready for prime time - production - you can easily "switch" the developer version to the licensed SQL Server instance.
As you start learning SQL Server, it is just fitting to start learning TSQL, which is SQL Server's implementation of the SQL language.
You mentioned you want to learn running some queries, so I suggest you start with:
- Data Manipulation Language (DML) - SELECT, INSERT, UPDATE, DELETE, MERGE
- Data Definition Language (DDL) - CREATE, ALTER, DROP database objects (Tables, Views, Constraints, Index, Stored Procedure, etc)
The SQL Server 2012 Books online is also a great starting point in learning SQL Server: http://msdn.microsoft.com/en-us/library/ms130214.aspx
The SQL Server community is also a great resource. Follow me on Twitter @MarlonRibunal. Some tips on where to find necessary SQL Server skills:
- Books
- Blogs
- SQL Server Central
- SQL ServerPedia (Now Toad World)
- List of SQL Server Bloggers (Blog Directory)
User Groups - there is this Professional Association for SQL Server (PASS). Good resource for anything about SQL Server - events, people, etc. Explore the site to learn what the organization is all about.
Events
- SQL Server User Group Meetings/Meetups - Check if there's a PASS Chapter near you - http://www.sqlpass.org/PASSChapters.aspx
- SQL Saturday Event - free, one day quality conference/training for SQL Server (database administraion, development, business intelligence, etc.)
#sqlhelp hashtag on Twitter - your helpline on Twitter. I suggest you start following those people that used the #sqlhelp tag - either they were asking for help related to SQL Server or answering a question.
SQL University - collection of topic-specific blogs
SQL Server Study Group Meetup - assemble your members and study for SQL Server Certification exams or just for enhancement of SQL Server knowledge
First you will have to use query language. All the flavors of SQL use the almost same SQL query syntax. So you will first have to learn SQL query language. For eg. you can start with tutorial at www.w3schools.com/sql/default.asp
Stanford University had offered public course on databases last Fall. They had nice tutorial on how to set up SQLite.
Once you start learning SQL you will need some tool using which you can build a database and run queries. SQLite is free software library which can be used to create databases and run queries. It can used as an independent tool i.e server setup is not required for using it. It also supports importing csv files.
Once you are familiar with SQL, you can use MySQL if you want to design some web-application or access to build desktop applications. I do not think Microsoft Access is at all necessary (as it is not free) if you just want to get started with.
If you want to learn Access then go for it, but if your eventual destination will be an Enterprise database then it won't help you as quickly in that direction as other options due to its extensive GUI hiding the SQL.
I know the title of your question including the word "easiest", but hear me out regarding the Oracle route. Not only is Oracle Express Edition (Oracle XE) free and available on Windows, but 99% of what you learn on Express Edition can be applied to Oracle licensed editions including Oracle Enterprise Edition. In addition, there are several features that make Oracle a good choice for small projects.
Installing Oracle XE is easy and using SQL on Oracle is no more difficult than using SQL on most other platforms. The more difficult parts of Oracle come with larger systems that need administration. The things that make being a database administrator hard mostly do not apply to people in your situation.
Oracle XE does not require a server (your workstation will most likely work fine).