Recs.
Updated
SQLite is a free and open-source software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine.
SpecsUpdate
Pros
Pro Portable
An SQLite database is a single ordinary disk file that can be located anywhere in the directory hierarchy. It works by sending requests to a single file where all the data is kept instead of communicating with a hosted database which gives access to an interface by making use of sockets and ports. The file format used is also cross-platform, so can easily be migrated to various machines.
This makes SQLite extremely portable throughout different applications, all that's needed to transfer the whole database is to make a copy of the file.
Pro Great language support
SQLite has bindings for a large number of programming languages, including BASIC, Delphi, C, C#, C++, Clipper//Harbour, Common Lisp, Curl, D, Free Pascal, Haskell, Java, JavaScript, Livecode, Lua, newLisp, Objective-C (on OS X and iOS), OCaml, Perl, PHP, Pike, PureBasic, Python, R, REALbasic, REBOL, Ruby, Scheme, Smalltalk, Tcl, Visual Basic.
Cons
Con No multi user
Lacks multi-user capabilities, see SQLite vs. MySQL vs. PostgreSQL: A Comparison of Relational Databases.
Also see: Appropriate Uses For SQLite.