The new forums will be named Coin Return (based on the most recent vote)! You can check on the status and timeline of the transition to the new forums here.
The Guiding Principles and New Rules document is now in effect.
Ok SQL and SAS are coming in to my place of work in one form or another and I'd like to be fairly "up" on them. Whilst I don't work directly in IT it would be handy for me to have a grasp.
As background I'm fine programming in VB, C++ and some (rusty) Java. I'm awesome with Excel (not to be modest) and VBA in Excel, I'm good with Access if a little rusty and I have a good knowledge of what goes in to a linked database and how they work.
But somehow I've missed out on SQL completely, how do I get started? Is there any free software I can use to play around with at home? Once I've got a guide that tells me how to create a basic database and run a few queries I should be able to make my way from there.
Also I know next to nothing about SAS, as far as I can gather it's some sort of database profiling tool.
As far as downloading and playing around with stuff, MySQL is free/open source and pretty widely used so you could certainly muck about with it some. It's got a command line client and some gui ones so you can use it however you feel comfortable.
I don't know of any extensive tutorials, but theres one basic one in the documentation, and the documentation is pretty thorough if you want to casually read through it. Someone else can probably give a better solution for the learning side though.
I think once I get everything set up and I delve in a bit I'll be fine. I'll give mySql a download on my Macbook. I'd prefer to stick to cli rather than gui, at least initially whilst I get everything down.
In terms of free SQL software that you can play around with, I'd recommend SQLite or PostgreSQL, depending on your needs.
SQLite is great if you just want to create tables, insert rows and perform ANSI standard SQL queries. There is absolutely no configuration required, you can literally download the EXE and run it from the command line with a filename and it will create the database on the fly. Its feature set is very limited, though. It supports basic indexes, but nothing like triggers or referential integrity constraints. If you need to play around with that sort of stuff, PostgreSQL is your best bet. It's a lot more involved, but it's a fully functional open source equivalent to major DBMSs like Oracle or SQL Server.
I found good practice for learning SQL was just grabbing a free web engine that used a front-end I was familiar with (like PHP) and supported some free back-end like mySQL or PostgreSQL. I then worked on changing it to suit my needs, would back up the database and toy with alterations, restore and repeat, and after a few weeks of toying around I had a much stronger understanding. Helped me a lot once I started dealing with products that use MS SQL.
Grab a book on Database creation and administration. I found it much easier to learn the proper way to build a database first and then move on into implementation with whichever software you want to use. Concepts such as Normalization, Dependencies, Naming Conventions, SQL Joins (Learn them. Use them!) etc are important to grasp to build a DB that will keep you sane in the administering process.
Jubal77 on
0
Apothe0sisHave you ever questioned the nature of your reality?Registered Userregular
edited February 2010
for the very first hour of learning SQL sqlcourse.com is nice.
Posts
I don't know of any extensive tutorials, but theres one basic one in the documentation, and the documentation is pretty thorough if you want to casually read through it. Someone else can probably give a better solution for the learning side though.
Cheers.
PSN: SirGrinchX
Oculus Rift: Sir_Grinch
SQLite is great if you just want to create tables, insert rows and perform ANSI standard SQL queries. There is absolutely no configuration required, you can literally download the EXE and run it from the command line with a filename and it will create the database on the fly. Its feature set is very limited, though. It supports basic indexes, but nothing like triggers or referential integrity constraints. If you need to play around with that sort of stuff, PostgreSQL is your best bet. It's a lot more involved, but it's a fully functional open source equivalent to major DBMSs like Oracle or SQL Server.
PSN: SirGrinchX
Oculus Rift: Sir_Grinch