I am currently pretty well versed in Java programming, but lack all experience with databases. I am now about to start working on an application for managing a database using SQL commands, nothing too fancy just general usage, and coded in Java ofcourse.
I was wondering if you guys have any book recommendations for getting some beginner insight into databases in general, and specifically managing a database using java and SQL?
I'm currently leaning towards the book "Database Programming with JDBC and Java":
... but I feel unsure about the exact focus of this book, if it is really aimed toward beginners and if it covers enough of SQL for effectively handling a database. Plus it is dated August 2001 and I wonder if it might be a bit outdated.
Do you think this book is a good introduction to database programming, or would you rather recommend another one?
You could look at Head First SQL. I haven't read this book, but the books in the Head First series are generally very good, so this should give you a basic introduction to SQL and databases. You should also try to remember that using SQL successfully is not just about the programming language i.e. it is not just a matter of learning some syntax etc. You need to learn a bit about relational data modelling - entities, relationships, primary keys, foreign keys etc - so that you can understand how to use SQL properly to do what you want.
You might also want to find out a bit more about your specific database e.g. if you are using MySQL or Oracle, find a book (or some online tutorials) that will help you learn about the specifics of using SQL on your chosen database. Many RDBMS vendors have their own extensions/variations to standard SQL, and some of these may be useful to you. Also, each RBDMS will have its own mechanisms for transaction-handling, indexing and so on, stuff that may influence how you write your SQL to improve performance etc. And find out how your ORM (e.g. Hibernate?) works: if you're stuck in Java-land then at least make sure you know how to get the most out of your Java tools for implementing DB applications.
But start with something like the Head First book, and see how you get on. Good luck!