Primer uporabe JDBC

Poglejmo si poenostavljen primer uporabe podatkovne baze MS Access. Na naslednji sliki vidimo strukturo tabel, stolpcev in atributov.
Model podatkovne baze
Še nekaj kratkih pojasnil:

- Stranka (Customer) ima lahko več naročil (Orders).
- Posamezno naročilo (Order) ima lahko več zapisov OrderDetail.
- Vsak zapis OrderDetail se nanaša na natančno eno knjigo (Book).
- Vsi primarni ključi (polja ID) so avtomatsko generirani in jih zato pri vrivanju zapisov ne navajamo.
- Referential integrity rules are maintained on all foreign keys (ID fields which not in the first position in the tables of the figure above). Hence, for example, it will cause an error to try to insert an Order record with an Orders.CustomerID for which there is no corresponding Customers record.
- OrderDetail.Quantity je celo tipa int.
- Books.BookPrice je tipa double .
- CustomerFirstName, CustomerLastName CustomerAddress in BookName are so tipa String.
- Orders.OrderDate je objekt tipa Date/Time object v MSAccess, JDBC pa ga preslika v objekt TIMESTAMP java.sql.Timestamp.

Objekte Timestamp lahko nastavljamo na trenutni čas na naslednji način:

    long millisecs = System.currentTimeMillis() ;
    Timestamp ts = new java.sql.Timestamp(millisecs) ;

Za nastavljanje na določeno vrednost pa lahko uporabljamo metodo valueOf z argumentom tipa String:

    ts = Timestamp.valueOf("2001-07-06 14:25:29.9") ;

ResultSet ima metode getTimestamp, putTimestamp in updateTimestamp, PreparedStatement ima metodo setTimestamp.
Preprost program, ki uporablja JDBC, je še vedno predolg, da bi ga vključili v to stran. Vidimo ga pa lahko v priponki Customer.java. Za njegovo izvedbo potrebujemo še datoteko Database.Properties in podatkovno bazo Shop.mdb. Vse te datoteke naj bodo v istem direktoriju. V nadzornem panoju moramo za Shop.mdb tvoriti vhod (entry) v naš »ODBC data sources«

Priponke:

Datoteka Customer.java
Datoteka Database.Properties
MS Access podatkovna baza Shop.mdb